Php 如何使用ajax将注册id与图像一起发送

Php 如何使用ajax将注册id与图像一起发送,php,jquery,ajax,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

我正在使用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($\u文件[“文件”][“名称”]!=”)
{
$test=explode(“.”,$_文件[“文件”][“名称”]);
$extension=结束($test);
$random=兰特(100999);
$image_name=$random.“.”$extension;
$location=“upimages/”$image\u name;
移动上传的文件($文件[“文件”][“tmp文件名”],$位置);
}
您可以
append()
将所需的添加到
FormData
对象中,就像处理文件一样:

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

然后可以使用
$\u POST['id']

在PHP代码中检索值。使用对象存储表单数据和id:

var dataToSend = {};
dataToSend.form_data = form_data;
dataToSend.yourID = yourID;
然后将数据发送至发送:

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

此方法不适用于二进制数据。所有内容都需要放在FormData对象中,而不是序列化。“帮助,我无法调用
form_data。第二次追加”…?此问题是由无法再复制的问题或简单的印刷错误引起的。虽然类似的问题可能在这里讨论,但这一问题的解决方式不太可能帮助未来的读者不以“打字错误”结尾?不确定这将如何算作打字错误?