Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Ajax数据中的第二个值传递给PHP_Php_Jquery_Mysql_Ajax - Fatal编程技术网

将Ajax数据中的第二个值传递给PHP

将Ajax数据中的第二个值传递给PHP,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,我有一个数组,我通过AJAX将它传递给PHP,从PHP文件中获得正确的响应。但是,我现在希望在AJAX的数据对象中包含一个“id”,以便与原始数组一起发送到PHP文件。我似乎无法理解这一点。如果有人有任何意见,我非常感谢 var id = $("input[name='id']").val(); var posArr = ['1', '2', '3', '4', '5', '6', '7']; $.ajax({ type: 'POST', url: 'php/file.php',

我有一个数组,我通过AJAX将它传递给PHP,从PHP文件中获得正确的响应。但是,我现在希望在AJAX的数据对象中包含一个“id”,以便与原始数组一起发送到PHP文件。我似乎无法理解这一点。如果有人有任何意见,我非常感谢

var id = $("input[name='id']").val();
var posArr = ['1', '2', '3', '4', '5', '6', '7'];

$.ajax({
  type: 'POST',
  url: 'php/file.php',
  data: { positions: posArr },
  dataType: 'json',
  cache: false,
  success: function(output) {
    console.log('success -> ' + output);
  },
  error: function(output) {
    console.log('fail -> ' + output);
  }
});
我的目标是使用传递的id根据该id搜索数据库,然后使用数组中的项存储/更新表(posArr)

多谢各位

我现在希望在AJAX的数据对象中包含一个“id”

然后将其包含在发送到服务器的对象中:

data: { positions: posArr, id: id }
在服务器端,它将被读取,就像
位置
数据元素一样。在这种情况下,只需:

$_POST['id']
我现在希望在AJAX的数据对象中包含一个“id”

然后将其包含在发送到服务器的对象中:

data: { positions: posArr, id: id }
在服务器端,它将被读取,就像
位置
数据元素一样。在这种情况下,只需:

$_POST['id']


data:{positions:posArr,id:id},
Easy-peezy-lemon-squezy。我如何检查从PHP返回到ajax的适当响应?我有:$id=$\u POST['id']$orderArr=$_POST['positions'];echo json_编码($orderArr);echo$id;在浏览器的开发人员工具中查看AJAX请求/响应。@JayBlanchard我看到了。谢谢。
data:{positions:posArr,id:id},
Easy-peezy-lemon-squezy。我如何检查从PHP返回ajax的相应响应?我有:$id=$\u POST['id']$orderArr=$_POST['positions'];echo json_编码($orderArr);echo$id;在浏览器的开发人员工具中查看AJAX请求/响应。@JayBlanchard我看到了。谢谢。我该如何回应AJAX?我有:$id=$\u POST['id']$orderArr=$_POST['positions'];echo json_编码($orderArr);echo$id;但是我得到了一个错误。@Sergio:我不太清楚为什么你需要用客户端刚刚发送给你的相同值来响应客户端,但通常你会创建一个对象并回显该对象的JSON。当前对其中一个进行回音,然后对另一个进行回音,会导致完整响应的JSON格式不正确。因此,创建一个同时包含数组和id的对象,并
json\u encode()
该对象。一个关联数组甚至可以做到这一点。例如:
echo json_encode(数组('positions'=>$orderArr,'id'=>$id))仅用于测试目的。我知道我得到了我所期望的。我无法理解上面的echo示例并得到结果。我收到一条成功消息,但输出为[object]。你能解释一下为什么它需要转换回一个包含这些对象的数组吗?@Sergio:JavaScript无法知道对象显示什么,只能显示基本类型。因此,输出整个对象将导致
[object object]
。您必须从该对象中具体输出所需的内容,例如单个属性。如果只是为了调试,您可以将对象传递到
console.log()
,这将把整个对象输出到浏览器的调试控制台。至于为什么需要创建对象,这是因为JSON响应需要是一个实体才能被解析。因此,多个响应值将是包含对象的属性。我如何将响应回显到AJAX?我有:$id=$\u POST['id']$orderArr=$_POST['positions'];echo json_编码($orderArr);echo$id;但是我得到了一个错误。@Sergio:我不太清楚为什么你需要用客户端刚刚发送给你的相同值来响应客户端,但通常你会创建一个对象并回显该对象的JSON。当前对其中一个进行回音,然后对另一个进行回音,会导致完整响应的JSON格式不正确。因此,创建一个同时包含数组和id的对象,并
json\u encode()
该对象。一个关联数组甚至可以做到这一点。例如:
echo json_encode(数组('positions'=>$orderArr,'id'=>$id))仅用于测试目的。我知道我得到了我所期望的。我无法理解上面的echo示例并得到结果。我收到一条成功消息,但输出为[object]。你能解释一下为什么它需要转换回一个包含这些对象的数组吗?@Sergio:JavaScript无法知道对象显示什么,只能显示基本类型。因此,输出整个对象将导致
[object object]
。您必须从该对象中具体输出所需的内容,例如单个属性。如果只是为了调试,您可以将对象传递到
console.log()
,这将把整个对象输出到浏览器的调试控制台。至于为什么需要创建对象,这是因为JSON响应需要是一个实体才能被解析。因此,多个响应值将是包含对象的属性。