FormData object is always empty

I am trying to create form data for submission in an email request (in a PHP script) using FormData.

However, the FormData object is always empty:

var oReq = new XMLHttpRequest();
var url = "http://www.test.com/test.php";
oReq.open("POST", url, true);
oReq.setRequestHeader("Content-Type","multipart/form-data");
var myFormData = new FormData();
myFormData.append("formType","PDF");
myFormData.append("pdf", pdf.output(),"thisPDF.pdf");
oReq.send(myFormData);

the variable 'pdf' is a jsPDF object (I checked that it was a valid object, and I tried to delete this line and only got a data item of the form β€œtest”). However, myFormData is always an empty object. Hope I just missed something simple.

In addition, when I try to check for form elements in a PHP script, it does not contain the $ _POST and $ _FILE elements at all.

ADDITIONAL INFORMATION:

When I try this code:

var oReq = new XMLHttpRequest();
var url = "http://www.test.com/test.php";
oReq.open("POST", url, true);
oReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
var myFormData = new FormData();
myFormData.append("formType","PDF");
alert(JSON.stringify(myFormData));
oReq.send(myFormData);

"formType" $_POST php script. File append myFormData ( "Content-Type", PHP , " ".

, $_POST isset ($ _ POST) , $_FILE isset ($ _ FILE).

+4
1

oReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); . multipart/form-data, FormData.

+1

All Articles