如何使用FormData?

时间:2015-10-04 18:14:03

标签: javascript php

我有这样的链接:file://.....。我正在尝试使用以下代码将此文件上传到Web服务器:

  var imageData = 'file://......';
  var formData = new FormData();
  formData.append('file-input', imageData);
  var xhr = new XMLHttpRequest();
  xhr.open("POST", "my_url");
  xhr.send(formData);

但我的服务器说文件输入未定义。

我的代码出了什么问题?

1 个答案:

答案 0 :(得分:1)

解决方案1 ​​

从静态变量中获取文件

var formData = new FormData();
    var imageData = 'https://static.xx.fbcdn.net/rsrc.php/v2/yx/r/pyNVUg5EM0j.png';
    formData.append('file',imageData);
    var xhr = new XMLHttpRequest();
    xhr.open("POST", "my_url");
    xhr.send(formData);

您可以使用echo '<pre>';print_r($_POST);

在my_url.php中获取文件

解决方案2

从输入类型文件字段(上载文件)中获取文件

var formData = new FormData();
var imageData = document.getElementById('the-file');
formData.append('file',imageData.files[0]);
var xhr = new XMLHttpRequest();
xhr.open("POST", "/test2/phpFile.php");
xhr.send(formData);

您可以使用echo '<pre>';print_r($_FILES);

在my_url.php中获取文件