Estou usando ajax para enviar um formulário multiparte com array, campos de texto e arquivos.
Anexo cada VAR aos dados principais, assim
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);
então eu uso a função ajax para enviá-lo a um arquivo PHP para armazenar dentro do banco de dados sql.
$.ajax({
type: "post",
url: 'php/submittionform.php',
cache: false,
processData: false,
contentType: false,
data: data,
success: function(request) {$('#box').html(request); }
})
Mas no lado do PHP, a arr
variável, que é um array, aparece como uma string.
Quando eu não o envio com ajax como dados de formulário, mas uso a $.POST
opção simples, eu o obtenho como um array no lado do PHP, mas não consigo enviar os arquivos também.
alguma solução?