AJAX と HTML5 を使用して、クライアント コンピューターからサーバー上のフォルダーへのファイルのアップロードを処理しようとしています。
現在、関数alert
に加えて以下のメッセージsuccess
が実行されることはなく、その理由はわかりません。JS エラーは発生しません。ファイルを保存する php スクリプトとフォルダーの両方に、完全な読み取り/書き込みアクセス許可が付与されます。
エラーを表示せずにこれを機能させることは非常に困難です。
この問題の原因を特定し、いくつかのエラーまたは少なくとも警告メッセージを実行するための支援に感謝します。
よろしくお願いします!
JQuery
$.ajax({
url: 'upload.php', //server script to process data
type: 'POST',
xhr: function() { // custom xhr
myXhr = $.ajaxSettings.xhr();
if(myXhr.upload){ // check if upload property exists
myXhr.upload.addEventListener('progress',progressHandlingFunction, false); // for handling the progress of the upload
}
return myXhr;
},
//Ajax events
success: function(data){
alert("OK");
$('body').html(data);
},
// Form data
data: formData,
//Options to tell JQuery not to process data or worry about content-type
cache: false,
contentType: false,
processData: false
});
HTML
<form enctype="multipart/form-data">
<input name="file" type="file" />
<input type="button" value="Upload" />
</form>
<progress></progress>
アップロード.php
<?php
if ($_FILES["file"]["name"] != NULL) {
if (file_exists("uploads/" . $_FILES["file"]["name"]))
echo $_FILES["file"]["name"] . " already exists. ";
else
move_uploaded_file($_FILES["file"]["tmp_name"], "uploads/" . $_FILES["file"]["name"]);
}
?>