PHP ファイルのアップロードの処理フローとそれに関連するすべての側面に注意してください
HTMLの基本
POSTフォームから送信
PHPアップロード手順
- クライアントはHTTP POST経由でフォームを送信します
- ファイルがアップロードされると、ファイルはデフォルトの一時ディレクトリに保存されます。PHP 言語の関数 putenv 設定は、php.ini 属性の Upload_tmp_dir と PHP 実行環境変数 TMPDIR を設定してください。
move_upload_file を使用して、アップロードを一時ディレクトリから指定された場所に移動します (upload_tmp_dir が指定された場所に設定されている場合、この手順は必要ありません) -
フォームがファイルのアップロードを選択しない場合 $_FILES['userfile']['type'] == "" 、 $_FILES['userfile']['size']== 0-
PHP 関連の事前定義済みグローバル変数
$_POST [配列]は、フォームのPOSTメソッドによって送信されたパラメータを取得するために使用されます-
$_FILES [配列]
-
$_FILES['userfile']['name'] クライアントマシンの元の名前 userfile == 入力コントロールの name 属性-
$_FILES['userfile']['type'] ファイルの MIME タイプ-
$_FILES['userfile']['size'] アップロードされたファイルのサイズ (バイト)-
$_FILES['userfile']['tmp_name'] ファイルのアップロード後にサーバーに保存される一時ファイル名-
$_FILES['userfile']['error'] ファイルアップロードに関するエラーコード-
PHP関連関数
is_upload_file(string $filename) は、ファイルが HTTP POST 経由でアップロードされるかどうかを決定します-
move_upload_file($file,$des) は、アップロードされたファイルを新しい場所に移動し、そのファイルが合法的にアップロードされたファイルであることを確認します-
パラメータに含まれるファイル名はすべて絶対パスです
php.ini関連の設定
file_uploads [boolean] HTTP ファイルのアップロードを許可するかどうか-
upload_max_filesize [整数] アップロードされるファイルの最大サイズ、デフォルトは 2M-
post_max_size [整数] POST データに許可される最大サイズ、この値 > Upload_max_filesize-
memory_limit [整数] この値>post_max_size-
max_input_time [整数] アップロード時間は、スクリプトが実行された時点から開始され、すべてのデータがサーバーに到着した時点で終了します。デフォルトは 60 秒です。
- upload_tmp_dir [文字列] ファイルのアップロードおよび保管用の一時ディレクトリ。PHP プロセス所有者ユーザーが書き込み可能です
- max_execution_time [整数] スクリプト実行時間、システムコール、スリープ、データベースクエリ、ファイルアップロード時間は含まれません
-
エラーメッセージ
[0] UPLOAD_ERR_OK ファイルは正常にアップロードされました
- [1] UPLOAD_ERR_INI_SIZE ファイルのアップロードが UPLOAD_MAX_SIZE を超えています
- [2] UPLOAD_ERR_FORM_SIZE アップロードされたファイルのサイズが MAX_FILE_SIZE を超えています
- [3] UPLOAD_ERR_PARTIAL ファイル部分が正常にアップロードされました
- [4] UPLOAD_ERR_NO_FILE ファイルがアップロードされませんでした
- [6] UPLOAD_ERR_NO_TMP_DIR 一時フォルダーが見つかりません
- [7] UPLOAD_ERR_CANT_WRITE ファイルの書き込みに失敗しました
-
PHPサーバーアップロードセキュリティ処理
サフィックス名のチェック
- サイズ制限
- コンテンツタイプチェック
- 写真の場合は、getimagesize を使用してファイルタイプを確認します
- アプリケーションディレクトリを設定し、サーバー経由でディレクトリのアクセス権限を個別にアップロードします
- 興味がありそうな記事
PHP はファイルヘッダー情報を分析して、アップロードされたファイルの種類を決定します
- php ファイルアップロード関連の設定チュートリアル
- jquery+html+php は Ajax リフレッシュフリーのファイルアップロードを実装します
- PHP は、アップロードされたファイルの種類 安全で最も現実的な解決策
- phpはファイルのバッチ圧縮、パッケージ化、ダウンロードを実装します
- phpプログラムはディレクトリ内のすべてのファイルを取得し、結果を配列に保存します
- phpメソッドは文字列がすべて英語、純粋な中国語、または中国語と英語の組み合わせで行われます
- 強力な PHP 画像処理クラス (透かし、透明度、ズーム、シャープ、回転、反転、カット、反転)
-
http://www.bkjia.com/PHPjc/764195.html
www.bkjia.comtruehttp://www.bkjia.com/PHPjc/764195.html技術記事 PHP ファイルのアップロードの処理フローと関連するすべての側面に注意してください。POST フォームを通じて PHP アップロード手順を送信し、アップロード後にファイルを保存します。