PHP FormData XMLHttpRequest $ _FILES пуст, но $ _POST дает сырой полный файл в кодировке - PullRequest
0 голосов
/ 18 мая 2019

Я пытаюсь загрузить файл через AJAX, вопрос в том, почему $ _FILES пусто?

Образец JavaScript

var formData = new FormData();
var fili = document.getElementById( divID ).files.length;
for (var x = 0; x < fili; x++) { formData.append( "fii" , $("#"+divID).prop("files")[x]); }

var xhr = new XMLHttpRequest(); xhr.open("POST", "/uboxhr.php", true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.send(formData);

в моем PHP

var_dump($_POST); // -->> I GET stuff like FULL RAW encoded 1�UV[(�c2����
var_dump($_FILES); // -->> Is EMPTY

Как я могу получить $ _FILES для заполнения ???

Я пытался

xhr.setRequestHeader('Content-type', 'multipart/form-data');

но не повезло, все тот же

Я тоже пробовал

var_dump($_FILES['fii']);

этот случай говорит "Undefined index: fii"

1 Ответ

0 голосов
/ 18 мая 2019

!!! Я нашел это:)

в тот момент, когда я удаляю эту строку

xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

все хорошо!

...