XMLHTTPREQUEST发送文件和参数

时间:2015-03-20 11:45:01

标签: javascript php ajax post xmlhttprequest

我正在尝试通过xmlhttprequest发送文件并通过PHP在服务器上处理它,我不能使用jQuery。

这是我的javascript

xhr = new XMLHttpRequest();
xhr.open("POST", $("upload").action, true);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.setRequestHeader("X_FILENAME", file.newname || file.name);
xhr.setRequestHeader("CONTENT_TYPE", file.type);
xhr.send("userfile=" + file + "&" + $('upload').serialize());

碰巧在我的PHP上,$ _FILES为空,$ _POST和表单数据一起保存变量userfile,标记为"对象文件"。

所以现在我的问题是:

  1. 变量userfile是否真的包含我要上传的文件的内容?
  2. 如何将userfile中的值复制到服务器上的文件中?
  3. 这是我到目前为止所尝试的:

    file_put_contents($tmpfile, $userfile);
    

    但它似乎没有将值正确复制到$ tmpfile。

    我希望我足够清楚

    提前致谢

    祝你好运

0 个答案:

没有答案