将数组从Ajax传递到PHP
问题描述:
我是ajax的新手,我通过js中的函数在btn表中创建了这个数组:我尝试了很多方法,没有成功,没有任何内容打印在我的* .PHP ..即使print_r
,var__dump
等将数组从Ajax传递到PHP
的console.log(数据)
{"datos":[{"value":false,"id":"173"},{"value":false,"id":"172"},{"value":false,"id":"171"},{"value":false,"id":"170"}]}
最大的问题是:如何传递这个数组到PHP,因为我需要更新表的SQL与这些值
JS:
$('#update').click(function(e){
e.preventDefault();
var datos = [],
data = '',
checkStatus = document.getElementsByName('check');
for(var i=0;i<checkStatus.length;i++){
var item = {
"value": checkStatus[i].checked,
"id": checkStatus[i].getAttribute('data-id')
}
datos.push(item);
}
data = JSON.stringify({datos:datos});
$.ajax({
type: "POST",
url: "updateTable.php",
datatype: "json",
data: {data},
cache: false,
success: function(){
console.log(data);
}
});
});
PHP:
????????
答
在服务器端..
var_dump(json_decode($json));
或每个
$json = '{"foo-bar": 12345}';
$obj = json_decode($json);
print $obj->{'foo-bar'}; // 12345
嗯,你通过任何其他变量数组。你可以在'PHP'中提取数据。但就传递它而言,您可以在'data'部分传递'array variable'名称。 – Script47
“我尝试过很多方法”,你尝试过var_dump($ _ POST);'? – rjdown
开始于'print_r(json_decode($ _POST ['data'],true));'' – ArtisticPhoenix