如何使用ajax

时间:2017-08-29 14:42:28

标签: php jquery ajax

我正在使用AJAX上传图片,但我也想发送与该图片相关的ID。在这里,我可以发送图像,但不能发送ID。

$("#upload").on('click', function() {
  var imgData = document.getElementById("fileBrowser").files[0];
  var form_data = new FormData();
  form_data.append("file",imgData);

  $.ajax({
    url: "url",
    method: "POST",
    data: form_data,
    contentType: false,
    cache: false,
    processData: false,
    success: function(data) {
      alert("success");
    },
    error: function() {
      alert("unsuccess");
    }
  });
});
if ($_FILES["file"]["name"] !='')
{
  $test = explode(".", $_FILES["file"]["name"]);
  $extension = end($test);
  $random = rand(100,999);
  $image_name = $random.".".$extension;
  $location = "upimages/".$image_name;
  move_uploaded_file($_FILES["file"]["tmp_name"], $location);
}

2 个答案:

答案 0 :(得分:1)

您可以append() FormData对象所需的内容,就像处理文件一样:

var form_data = new FormData();
form_data.append("file", imgData);   
form_data.append('id', 'your value here');

然后,您可以使用$_POST['id']检索PHP代码中的值。

答案 1 :(得分:0)

使用对象存储form_data和您的ID:

var dataToSend = {};
dataToSend.form_data = form_data;
dataToSend.yourID = yourID;

然后发送dataToSend:

$.ajax({
    url:"url",
    method:"POST",
    data:**dataToSend**,
    contentType:false,
    cache:false,
    processData:false,
    success:function(data){
        alert("success");
    },
    error:function(){
        alert("unsuccess");
    }
});