gpt4 book ai didi

php - 拖放 Jquery 上传到 PHP

转载 作者:搜寻专家 更新时间:2023-10-31 21:36:24 25 4
gpt4 key购买 nike

我看过很多关于这个问题的主题,但没有一个得到合法的答案或包含 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);
}
});
}

上面的代码是从另一个主题中得到的。 (alert(uploadFormData); -> 给我一个 Formdata 对象)

PHP:

      move_uploaded_file($_FILES["file"]["tmp_name"],
"ftp/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];

无法让它工作:<

我从 JS 的回调函数中得到的消息是:

未定义索引:文件

最佳答案

您的 PHP 代码需要遍历请求中的所有文件。根据您的 javascript,您的 PHP 代码应如下所示:

foreach ($_FILES["files"] as $file) {
move_uploaded_file($file['tmp_name'], $target);
}

$target 变量必须指向文件的本地目标。有关详细信息,请参阅 PHP 手册。

关于php - 拖放 Jquery 上传到 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18473216/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com