问题描述
|
我目前正在按照此示例进行HTML 5拖放操作。我希望使用它通过PHP脚本将删除的文件上传到远程FTP服务器。但是,我的PHP脚本如何访问这些删除的文件?
使用常规的Web表单,我可以使用$ _FILES。。但是我不认为可以对删除的文件使用$ _FILES。
在示例中,脚本在放置事件后调用handleFiles函数
function handleFiles(files) {
var file = files[0];
document.getElementById(\"droplabel\").innerHTML = \"Processing \" + file.name;
var reader = new FileReader();
// init the reader event handlers
reader.onprogress = handleReaderProgress;
reader.onloadend = handleReaderLoadEnd;
// begin the read operation
reader.readAsDataURL(file);
}
我猜想我可以迭代数组列表的每个元素,并将每个元素发送到我的PHP脚本中。如上所述,如何将数组列表中的该元素发送到PHP脚本? JSON吗? jQuery POST吗?
我知道可以使用各种jquery插件来实现此目的,并且我已经下载了其中的一些...但是我很好奇我是否可以在此示例中实现相同的功能。
解决方法
我认为上传是指以ajax操作上传它。
“ 1”指的是一个File对象,在用户删除文件后可以使用该对象。之后,您有两个选择:
使用FileReader读取文件,以xhr格式发送文本作为发布数据(不建议使用,因为它仅适用于文本)
将对象传递给FormData,然后将FormData对象传递给xhr以发送文件(尽管不适用于Firefox <= 3.6)
查看Mozilla开发人员中心文档,以了解这些接口的用法。我有使用这些对象的正在运行的项目,但是桥接代码太多,无法成为一个很好的演练演示。 https://github.com/timdream/html5-file-upload
,为什么不使用开源解决方案解决您的问题,而不是重新发明轮子。
http://plupload.com/
几乎是您所需要的。我用它,它产生奇迹。此外,当浏览器无法处理html5时,它会退回到html 4表单上载。