我正在测试向 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'];
?>
但我在控制台中收到一个 undefined index: my_key 错误。
有人知道我可能做错了什么吗?多年来一直摸不着头脑。
最佳答案
您还没有向 FormData 添加任何文件,只是一个可以通过 $_POST['my_key']
访问的字符串。
关于PHP 没有从 ajax 接收 formData 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14187533/