我見過很多關於這個問題的主題,但他們都沒有得到一個合法的答案或包含PHP文件。拖放Jquery上傳到PHP
我想做一個拖動&下降保存工具。問題是我的文件沒有上傳到我的FTP文件夾。
我得到了下面的代碼:
HTML:
<div id="drop_zone">
<p>Drop Here</p>
</div>
<form enctype="multipart/form-data" id="yourregularuploadformId">
<input type="file" name="files[]" multiple="multiple">
</form>
JS:
$(function() {
var dropZone = document.getElementById('drop_zone');
dropZone.addEventListener('dragover', handleDragOver, false);
dropZone.addEventListener('drop', handleFileSelect, false);
等....下降部分
function handleFileSelect(evt) {
evt.stopPropagation();
evt.preventDefault();
files = evt.dataTransfer.files;
uploadFile(files);
等..獲取文件到我的方法
function uploadFile(droppedFiles){
// add your files to the regular upload form
var uploadFormData = new FormData($("#yourregularuploadformId")[0]);
if(droppedFiles.length > 0) { // checks if any files were dropped
for(f = 0; f < droppedFiles.length; f++) { // for-loop for each file dropped
uploadFormData.append("files[]",droppedFiles[f]); // adding every file to the form so you could upload multiple files
}
}
// the final ajax call
alert(uploadFormData);
$.ajax({
url : "php/uploadFile.php", // use your target
type : "POST",
data : uploadFormData,
cache : false,
contentType : false,
processData : false,
success : function(ret) {
alert(ret);
}
});
}
得到了另一個話題上面的代碼。 (警報(uploadFormData); - >給我一個FORMDATA aboject)
PHP:
move_uploaded_file($_FILES["file"]["tmp_name"],
"ftp/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
不能讓它工作:<
的信息,我從回調函數得到我的JS是:
未定義的索引:文件
請看這裏然後:http://stackoverflow.com/questions/8206011/how-can-i-move-a-file-to-another-folder-using-php –
你看過你的請求有效載荷瀏覽器嗎?每個文件多部分邊界的名稱屬性是什麼樣的?您的PHP代碼正在查找名爲「文件」的文件。根據你的javascript,我看不出這是正確的。 –
對不起雷,我不知道你的意思是「在瀏覽器中查看請求負載」:(你是怎麼做到的?:) –