Javascript 将已编辑的文件(图像)数组发送到php脚本
我有一个表单,其中包含一个file类型的输入,可以接受多个文件(图像),如下所示:Javascript 将已编辑的文件(图像)数组发送到php脚本,javascript,php,Javascript,Php,我有一个表单,其中包含一个file类型的输入,可以接受多个文件(图像),如下所示: <input type="file" id="fileupload" name="fileupload[]" multiple /> 一旦用户选择了一个或多个图像,这些图像将动态添加到网站中,如果用户愿意,还可以删除其中一个或全部图像 有没有一种方法可以更新从输入元素中选择哪些文件发送到php脚本 如果没有,我如何仅发送用户选择的图像?我的意思是,我可以将用户选择的内容放在JavaScr
<input type="file" id="fileupload" name="fileupload[]" multiple />
一旦用户选择了一个或多个图像,这些图像将动态添加到网站中,如果用户愿意,还可以删除其中一个或全部图像
有没有一种方法可以更新从输入元素中选择哪些文件发送到php脚本
如果没有,我如何仅发送用户选择的图像?我的意思是,我可以将用户选择的内容放在JavaScript的另一个数组中,但如何将它们发送到php脚本
已编辑
更多详细信息例如,当用户选择三个图像文件时,我使用JavaScript代码将它们作为图像附加到屏幕中,用户可以通过单击它们来删除其中一个或全部。因此,我的问题是,如果用户删除了其中一个图像,我如何才能只将另外两个图像发送到php脚本中
我不是在寻找完整的代码。我只是想知道如何完成它。我明白你想要什么 将Ajax与其他技术结合起来可以实现这一点
$(document).ready(function(){
$("form#data").submit(function(){
// create your filtred list of files from your file input
var data = {};
$.each($('#fileupload')[0].files, function(i, file) {
// Keep only the files that the user has selected
if ( i % 2 == 0){ // <--- CHANGE THIS
data['file-'+i] = file;
}
});
// create a FormData (to send files with AJAX)
var formData = new FormData();
for (var key in data) {
formData.append(key, data[key]);
}
// send that formData
php_script_url = "your_script.php"
$.ajax({
url: php_script_url,
type: 'POST',
data: formData,
async: false,
success: function (data) {
console.log(data);
},
cache: false,
contentType: false,
processData: false
});
return false;
});
});
你写过PHP吗?因此,它不是一个代码编写服务,而是用于修复现有代码。@Oisin-我认为问题在于如何发送到php脚本,不是php脚本中应该包含的内容。@has19-您可以发布代码,显示用户如何选择图像吗?@devlin carnate是的,我确实知道如何将多个图像上载到数据库,但问题是如果用户删除其中一个图像,我将只向php脚本发送经过编辑的列表。我三岁的孩子说“已选择”。赞成票!好的,我认为这是正确的答案。我完全按照你说的做了,但我正在尝试访问数据变量send from php script中包含的一个文件,使用$_POST['file-0'],它返回null。我已经调试了javascript代码,并且数据变量设置为预期值。如果我将字符串附加到formdata而不是文件,则它可以工作,但不能与文件一起工作,尽管我检查了javascript代码,并且数据数组中包含了预期的文件。thx非常感谢您我使用$\u POST错误地访问了文件,我应该使用$\u文件访问它们
<script src="//code.jquery.com/jquery-1.12.0.min.js"></script>