ホームページ >バックエンド開発 >PHPチュートリアル >jQuery AJAX ファイルの PHP へのアップロードが機能しないのはなぜですか?
PHP を使用した jQuery AJAX ファイルのアップロード
問題:
AJAX ファイルのアップロードが試行されていますjQuery と PHP を使用していますが、ファイルはアップロードされておらず、成功アラートも表示されません。
解決策:
サーバー側スクリプト:
上の PHP スクリプトサーバーは、ファイルのアップロードを処理し、フォーム データを受信し、指定された場所にファイルを保存する必要があります。例:
if (0 < $_FILES['file']['error']) { echo 'Error: ' . $_FILES['file']['error'] . '<br>'; } else { move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/' . $_FILES['file']['name']); }
アップロード ディレクトリに書き込み権限があることを確認します。
AJAX 呼び出し:
AJAX jQuery スクリプトの呼び出しでは、ファイルを処理するサーバー側スクリプトの URL を指定する必要があります。アップロード:
$.ajax({ url: 'upload.php', // Point to the server-side PHP script dataType: 'text', // Specify the expected response type (optional) cache: false, contentType: false, processData: false, data: form_data, type: 'post', success: function(php_script_response) { alert(php_script_response); // Display the response from the PHP script (optional) } });
サーバー上のファイルの名前変更:
$_FILES['file']['name'] の代わりに、 move_uploaded_file() でサーバーが生成した独自のファイル名を使用して、 file:
move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/my_new_filename.whatever');
追加のヒント:
以上がjQuery AJAX ファイルの PHP へのアップロードが機能しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。