我正在尝试使用ajax和php上传文件主要是图像,但无法在php端检索图像。
HTML代码:
<input type='file' name='LogoImageUploader' id='LogoImageUploader' onchange='FileUploadCheck();' />
ajax致电:
var formData = new FormData();
formData.append('file', $('#LogoImageUploader')[0].files[0]);
jQuery.ajax({
type: "POST",
url: "FileUploadChecker.php",
data: formData,
processData: false,
contentType: false,
async: false,
cache: false,
success : function(result){
alert(result);
}
});
}
然后是 php代码,这里我无法检索图像:
echo basename($_FILES['LogoImageUploader']['name']);
ajax调用导致以下有效负载请求:
------WebKitFormBoundaryb3jaGq8f7FbEKHF7
Content-Disposition: form-data; name="file"; filename="image.png"
Content-Type: image/png
------WebKitFormBoundaryb3jaGq8f7FbEKHF7--
当我在我的php文件中执行var_dump($_FILES)
时,我得到的ajax调用的响应是
array (size=0)
empty
答案 0 :(得分:0)
您要按名称file
发送图片,请使用
$_FILES['file']
而不是
$_FILES['LogoImageUploader']
或更改js
formData.append('LogoImageUploader', $('#LogoImageUploader')[0].files[0]);