最佳答案
我使用 ajax 提交一个包含数组、文本字段和文件的多部分表单。
我像这样将每个 VAR 附加到主数据
var attachments = document.getElementById('files');
var data= new FormData();
for (i=0; i< attachments.files.length; i++){
data.append('file', attachments.files[i]);
console.log(attachments.files[i]);
data.append ('headline', headline);
data.append ('article', article);
data.append ('arr', arr);
data.append ('tag', tag);
然后使用 ajax 函数将其发送到一个 PHP 文件,以便存储在 sqlDB 中。
$.ajax({
type: "post",
url: 'php/submittionform.php',
cache: false,
processData: false,
contentType: false,
data: data,
success: function(request) {$('#box').html(request); }
})
但是在 PHP 方面,arr
变量是一个数组,它显示为一个字符串。
当我不使用 ajax 作为表单数据发送它,而是使用简单的 $.POST
选项时,我会在 PHP 端将它作为一个数组来获得,但这样我就不能同时发送文件了。
有什么办法吗?