ホームページ バックエンド開発 PHPチュートリアル ファイル関数を使用して PHP ファイル アップロード ケースの分析を実装する_PHP チュートリアル

ファイル関数を使用して PHP ファイル アップロード ケースの分析を実装する_PHP チュートリアル

Jul 15, 2016 pm 01:26 PM
php アップロード あなたは誰ですか 関数 利用 成し遂げる 書類 事例分析 コンピューター

あなたがコンピューター愛好家で PHP を知らない場合は、PHP の関連知識を知りたい場合は、PHP ファイルのアップロードの実装を見てみましょう。このコードは 2 つのファイルに分割されており、1 つは Upload.html で、もう 1 つは Upload.php です。

<ol class="dp-xml">
<li class="alt">
<span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>form</SPAN></FONT></STRONG><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>enctype</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"multipart/form-data"</FONT></SPAN><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>action</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"upload.php"</FONT></SPAN><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>method</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"post"</FONT></SPAN><SPAN class=tag><STRONG><FONT color=#006699>></span></font></strong></span><span> </span>
</li>
<li class="">
<span></span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>input</SPAN></FONT></STRONG><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>type</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"hidden"</FONT></SPAN><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>name</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"max_file_size"</FONT></SPAN><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>value</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"100000"</FONT></SPAN><SPAN class=tag><STRONG><FONT color=#006699>></span></font></strong><span> </span>
</li>
<li class="alt">
<span></span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>input</SPAN></FONT></STRONG><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>name</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"userfile"</FONT></SPAN><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>type</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"file"</FONT></SPAN><SPAN class=tag><STRONG><FONT color=#006699>></span></font></strong><span>  </span>
</li>
<li class="">
<span></span><strong><font color="#006699"><span class="tag"><</SPAN><SPAN class=tag-name>input</SPAN></FONT></STRONG><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>type</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"submit"</FONT></SPAN><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>value</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"上传文件"</FONT></SPAN><SPAN class=tag><STRONG><FONT color=#006699>></span></font></strong><span> </span>
</li>
<li class="alt">
<span></span><strong><font color="#006699"><span class="tag"></</SPAN><SPAN class=tag-name>form</SPAN><SPAN class=tag>></span></font></strong><span> </span>
</li>
</ol>
ログイン後にコピー

このうち、
に注意してください。ファイルをアップロードする場合は、multipart/form と指定する必要があります。 - データ、そうでない場合、サーバーは何をすべきかわかりません。ファイル Upload.html のフォーム オプション MAX_FILE_SIZE の非表示の値フィールドは、値を設定することでアップロードされるファイルのサイズを制限できることに注意してください。 MAX_FILE_SIZE の値はブラウザに対する単なる提案であり、実際には簡単に回避できます。したがって、ブラウザの制限を制限するためにこの値に依存しないでください。実際、PHP 設定の PHP ファイルアップロードの最大値は無効になりません。ただし、フォームに MAX_FILE_SIZE を含めたほうがよいでしょう。ユーザーは、大きなファイルがアップロードされるのを待って時間を費やしてから、そのファイルが大きすぎることに気づくという手間を省くことができます。
<ol class="dp-xml">
<li class="alt"><span><span>upload.php  </span></span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">f</font></span><span>=&$HTTP_POST_FILES['Myfile'];  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">dest_dir</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">'uploads'</font></span><span>;//设定上传目录  </span>
</li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">dest</font></span><span>=$dest_dir.'/'.date("ymd")."_".$f['name'];//设置文件名为日期加上文件名避免重复  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">r</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">move_uploaded_file</font></span><span>($f['tmp_name'],$dest);  </span>
</li>
<li class=""><span>chmod($dest, 0755);//设定上传的文件的属性 </span></li>
</ol>
ログイン後にコピー

または

<ol class="dp-xml"><li class="alt">
<span><strong><font color="#006699"><span class="tag"><?</SPAN><SPAN class=tag-name>copy</SPAN></FONT></STRONG><SPAN>($_FILES[MyFile][tmp_name],$_FILES[MyFile][name]);</SPAN><SPAN class=tag><STRONG><FONT color=#006699>?></span></font></strong></span><span> </span>
</li></ol>
ログイン後にコピー

上記の例の $_FILES 配列の内容は次のとおりです。ファイルアップロードフィールドの名前は userfile とする(名前は任意)

<ol class="dp-xml">
<li class="alt"><span><span>$_FILES['userfile']['name']//客户端机器文件的原名称。  </span></span></li>
<li class=""><span>$_FILES['userfile']['type'] //文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。  </span></li>
<li class="alt"><span>$_FILES['userfile']['size']// 已上传文件的大小,单位为字节。  </span></li>
<li class=""><span>$_FILES['userfile']['tmp_name'] //文件被上传后在服务端储存的临时文件名。  </span></li>
<li class="alt"><span>$_FILES['userfile']['error'] //和该文件上传相关的错误代码 </span></li>
</ol>
ログイン後にコピー

PHP ファイルアップロード値の分析:
◆値: 0; エラーは発生せず、ファイルのアップロードは成功します。
◆値: 1; アップロードされたファイルは、php.ini の Upload_max_filesize オプションで制限された値を超えています。
◆値: 2; アップロードされたファイルのサイズが HTML フォームの MAX_FILE_SIZE オプションで指定された値を超えています。
◆値: 3; ファイルの一部のみがアップロードされました。
◆値: 4; ファイルはアップロードされませんでした。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446562.html技術記事コンピューター愛好家で PHP を知らない人は時代遅れです。PHP の関連知識を知りたい場合は、PHP ファイルのアップロードの実装を見てみましょう。このコードは次のように分かれています...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

Deepseekをローカルで微調整する方法 Deepseekをローカルで微調整する方法 Feb 19, 2025 pm 05:21 PM

Deepseekをローカルで微調整する方法

DeepSeekイメージジェネレーションチュートリアル DeepSeekイメージジェネレーションチュートリアル Feb 19, 2025 pm 04:15 PM

DeepSeekイメージジェネレーションチュートリアル

PIノードティーチング:PIノードとは何ですか? PIノードをインストールしてセットアップする方法は? PIノードティーチング:PIノードとは何ですか? PIノードをインストールしてセットアップする方法は? Mar 05, 2025 pm 05:57 PM

PIノードティーチング:PIノードとは何ですか? PIノードをインストールしてセットアップする方法は?

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法

binance公式サイトURL Binance公式サイト入口 最新正規入口 binance公式サイトURL Binance公式サイト入口 最新正規入口 Dec 16, 2024 pm 06:15 PM

binance公式サイトURL Binance公式サイト入口 最新正規入口

Deepseekに尋ねる方法 Deepseekに尋ねる方法 Feb 19, 2025 pm 04:39 PM

Deepseekに尋ねる方法

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

PHPでHTML/XMLを解析および処理するにはどうすればよいですか?

See all articles