PHP にファイルをアップロードすると $_FILES 配列が空になるのはなぜですか?
PHP でのファイルのアップロードは難しい場合があり、多くの場合、$ファイルがアップロードされたように見えても、_FILES 配列は空になります。これが発生する一般的な理由とその修正方法は次のとおりです。
1. PHP 構成
- php.ini ファイルで「file_uploads」が有効になっていることを確認します。
- より大きなファイルを許可するには、「post_max_size」と「upload_max_filesize」の値を増やします。アップロードします。
2.フォーム タグ
- フォーム タグに enctype="multipart/form-data" 属性があることを確認してください。
- 次のような複数の入力ファイル フィールドがないことを確認してください。同じ名前の属性。
3.権限の問題
- tmp ディレクトリとアップロード ディレクトリに適切な読み取り/書き込み権限を設定します。
- これらのディレクトリへのパスにスペースが含まれていないことを確認してください。
4.その他の問題
- ページ上のすべてのフォームに終了タグがあることを確認してください。
- GET はマルチパート アップロードをサポートしていないため、フォーム送信には POST メソッドを使用してください。
- 入力ファイルのタグに NAME 属性があることを確認してください。
- JavaScript を使用して無効にすることは避けてください。送信中の入力ファイル フィールド。
- アップロードするファイル名から英数字以外の文字を削除します。
- 空き容量が不足すると問題が発生する可能性があるため、利用可能なディスク容量を確認してください。
- 確認重複するタグや無効なタグの HTML 構造を確認してください。
- AJAX POST ではなく、通常の POST リクエストとしてフォームを送信してください。 request.
さらに、次のヒントを考慮してください:
- 小さなテスト ファイルをアップロードして、問題が解決するかどうかを確認してください。
- アップロードを妨げる可能性がある .htaccess ファイル内のカスタム PHP 設定を無効にします
- input タグの name 属性ではアンダースコアを使用しないでください。
以上がPHP ファイルのアップロードで $_FILES 配列が空になるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。