我想用Ajax上传单个图片。我的问题不是如何编写php或html文件。我的问题是如何将通过jquery从表单/输入/文件类型通过ajax收集的“$ _FILE”信息传输到php?
实际上我的脚本看起来像这样:
HTML
<form enctype="multipart/form-data" id="pi_form_upload">
<input style="display:none;" id="pi_upload" type="file"/>
</form>
<a href="" id="upload_link">Submit</a>
JS / AJAX
//on file change call ajax-function
document.getElementById("pi_upload").onchange = function() {UploadeNewProfilImage();};
function UploadeNewProfilImage() {
$("#changeProfilImg").css({"display":"none"});
var formData = new FormData($("#pi_form_upload")[0]);
$.ajax({
url: "php/UploadNewProfilImage.php",
type: 'POST',
data: formData,
dataType: "json",
async: false,
success: function (data) {
alert(data)
},
cache: false,
contentType: false,
processData: false
});
};
直到我还没有要显示的php文件,因为我无法传输$ _FILE数据。我想使用上传数据:
//Set Variablen
$ImageName = str_replace(' ','-',strtolower($_FILES['myfile']['name']));
$ImageType = $_FILES['myfile']['type']; //"image/png", image/jpeg etc.
$ImageTmp = $_FILES["myfile"]["tmp_name"];
$ImageSize = $_FILES["myfile"]["size"];
$ImageError = $_FILES["myfile"]["error"];
我希望有人可以帮助我。
解决我的问题(来自Worldgorger): 为输入提供“名称” - 属性