3

我正在测试向 PHP 发送一个 formData 对象(我正在关注http://net.tutsplus.com/tutorials/javascript-ajax/uploading-files-with-ajax/),但我很难将它从地面。首先,创建 formData 对象并填充:

var formdata = new FormData();
formdata.append('my_key','my_value');

然后我使用 jQuery 的 ajax 调用是:

  $.ajax({
     url: 'php_upload.php',
     type: 'POST',
     cache: false,
     data: formdata,
     processData: false,
     contentType: false,
     success: function (response) {
     console.log(response);
  }
  }); 

使用 php_upload.php 文件包含:

<?php
    echo $_FILES['my_key']['name'];
?>

但是我在控制台中得到一个未定义的索引:my_key 错误。

任何人都知道我可能做错了什么?多年来一直在挠头。

4

1 回答 1

8

您还没有向 FormData 添加任何文件,只是一个可以通过$_POST['my_key'].

要传递文件,FormData.append 的第二个参数必须是 aFILE或 a BLOB

于 2013-01-06T22:38:07.377 回答