通过输入表单和Ajax上传单个图像

时间:2015-07-02 18:46:58

标签: javascript php jquery html ajax

我想用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): 为输入提供“名称” - 属性

0 个答案:

没有答案