ホームページ  >  記事  >  バックエンド開発  >  php ファイルのアップロード_PHP チュートリアル

php ファイルのアップロード_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:07:06828ブラウズ

php チュートリアル ファイルのアップロード

PHP を使用してアップロードを管理する前に、まずファイルをアップロードするためのユーザー インターフェイスとして機能する HTML フォームを構築する必要があります

。以下の例を見て、編集可能な HTML コードを保存してください。





アップロードするファイルを選択してください:



HTML フォームを作成する際には、従う必要があるルールがいくつかあります。まず、フォームで POST メソッドが使用されていることを確認します。次に、フォーム

には次の属性が必要です: 文字エンコーディング = "multiple/form-data"。サーバーに情報を送信するときに使用されるコンテンツ タイプを指定します。これらの要件がなければ、ファイルをアップロードできません。

もう 1 つ注意すべき点は、MAX_FILE_SIZE という名前の非表示のフォーム フィールドが値を設定することです。一部の Web ブラウザーは実際にこの領域を反映しており、ユーザーはこの数値 (バイト単位) を超えるファイルをアップロードできません。この値は、php.ini ファイルで設定された最大アップロード サイズと一致するように設定する必要があります。これは

upload_max_filesize とのセットで、デフォルト値は 2MB です。ただし、スクリプトが

インチを超えるファイルを配信しないという保証はありません。危険なのは、攻撃者がいくつかの大きなファイルのリクエストを送信し、PHP がデコードされたファイルを保存するファイル システムを埋めようとすることです。 php.ini の post_max_size ディレクティブを必要な最大ファイル サイズに設定します (upload_max_filesize より大きい必要があります)。デフォルト値は 10MB です。このディレクティブは、

要件内で許可される POST データの最大サイズを制御します。また、php.ini ファイルで

file_uploads が On に設定されていることを確認してください。

少なくとも、input タグには、type="file" というプロパティがあります。ファイル選択制御の入力

要素を指定するために使用されます。これにより、「参照」ボタンに入力する必要があるファイル URI が提供され、

URI 入力の代替として使用できます。

ユーザーがファイル URI を入力して送信ボタンをクリックすると、ファイルのコピーがサーバーに送信され、ユーザーは

Upload.php にリダイレクトされます。この PHP ファイルはフォーム データを処理します。

上に戻る

フォームデータの処理 (PHP コード)

ファイルがアップロードされ、PHP がファイルの一時コピーを作成し、ファイルに関する情報を含むスーパーグローバル変数 $_FILES 配列を設定します

。各ファイルには 5 つのデータがあります。

という名前のフィールドを「uploaded_file」としてアップロードしたため、次のデータが存在します:

変数 $_FILES ["uploaded_file"] ["name"] ユーザーのマシンからアップロードされたファイルの元の名前

変数 $ _FILES ["uploaded_file" "] ["type"] アップロードされたファイルの MIME タイプ (ブラウザ

がタイプを提供する場合)

変数 $_FILES ["uploaded_file"] ["size"] アップロードされたファイルのサイズbytes

Variable$ _FILES ["uploaded_file"] ["tmp_name"]、サーバー上のファイルが一時的に保存される場所

Variable $ _FILES ["uploaded_file"] ["error"] ファイルのアップロード結果からのエラー コード

以下の例では、アップロードされたファイルはアップロード ディレクトリに保存されます。 350Kb未満のJPEG


画像のみをアップロードできます。コード自体は一目瞭然ですが、少し説明します。見て保存する例があります

このPHPコードをupload.phpとして保存します。
//ファイルがあることを確認してください

if((!empty($_FILES["uploaded_file"])) && ($_FILES['uploaded_file']['error']


== 0) ) {
//ファイルが JPEG 画像であり、そのサイズが 350Kb 未満であるかどうかを確認します

$filename =basename($_FILES['uploaded_file']['name']);

$ext = substr($filename, strrpos( $filename, '.') + 1);

if (($ext == "jpg") && ($_FILES["uploaded_file"]["type"] == "image/jpeg")


&&
( $_FILES["uploaded_file"]["size"] < 350000)) {
//このファイルの保存先のパスを決定します

$newname = dirname(__FILE__).'/upload/'.$filename; K // 同じ名前のファイルが


サーバー上に既に存在するかどうかを確認します if (! File_exists ($ newname)) {
アップロード ファイルを次の場所に移動しようとします W Place (IF ((Move_uploaded_file ($ ( $ _FILES['アップロードされたファイル']
_ ['Tmp_name'], $ newname)) {

echo "実行しました! ファイルは次のように保存されました:"
} ELSE {

"Echo" エラー: アップロード中に発生しました!
}}} Else {
echo "エラー: ファイル". $ _ ファイル ["uploaded_file"] ["name"]. "Alream

存在します";

}
} else {
echo "エラー: ファイルがアップロードされていません";
}
?>
ファイルをアップロードする前に、ファイルが実際に何かをアップロードしているかどうかを確認する必要があります。アップロードされたファイル (JPEG 画像) を確認したところ、そのサイズは 350Kb 未満でした。次に、このファイルを保存するパスを決定し、サーバー上にこれらのファイルの名前がす​​でに存在するかどうかを確認します。すべてのチェックに合格したら、

move_upload_file() 関数を使用してファイルを永続的な場所にコピーします。この機能は、処理する

ファイルがユーザーからアップロードされた正当なファイルであることも確認します。ファイルが正常にアップロードされると、対応する

メッセージが表示されます。

注: ファイルをコピーするディレクトリ内の一時ファイルの読み取りと書き込みが PHP で許可されていることを確認してください。

この例は、実際には PHP を使用してファイルをアップロードする方法を示すために提案されています。たとえば、

新しい条件を追加して、GIF や PNG 画像、または必要なその他の種類のファイルのアップロードを許可できます。このチュートリアルを初めて使用する場合

は、PHP の使用を開始するのに適した場所かもしれません。

http://www.bkjia.com/PHPjc/444978.html

www.bkjia.com


本当

http://www.bkjia.com/PHPjc/444978.html

PHP ファイル アップロードのチュートリアル PHP を使用してアップロードを管理するには、まずファイルをアップロードするためのユーザー インターフェイスとして機能する HTML フォームを構築する必要があります。以下の例を見て保存してください...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。