将JSON对象传递到php变量中
我正在通过JSON将一些数据从jQuery脚本发送到一个php文件,在该文件中,我试图将其拆分为变量,以便将其全部上载到数据库。到目前为止,JSON数据是作为JSON对象发送和接收的,但我无法提取任何数据 jquery脚本将JSON对象传递到php变量中,php,jquery,json,Php,Jquery,Json,我正在通过JSON将一些数据从jQuery脚本发送到一个php文件,在该文件中,我试图将其拆分为变量,以便将其全部上载到数据库。到目前为止,JSON数据是作为JSON对象发送和接收的,但我无法提取任何数据 jquery脚本 函数更新(){ 变量x={“1”:{“项目”:“泄漏”,“数量”:“2”,“商店”:“水果蔬菜”},“2”:{“项目”:“鸡汤”,“数量”:“1”,“商店”:“潘”}; var dataSend=JSON.stringify(x); $.ajax({ url:“update
函数更新(){
变量x={“1”:{“项目”:“泄漏”,“数量”:“2”,“商店”:“水果蔬菜”},“2”:{“项目”:“鸡汤”,“数量”:“1”,“商店”:“潘”};
var dataSend=JSON.stringify(x);
$.ajax({
url:“updateTest.php”,
类型:“POST”,
数据:dataSend,
数据类型:“json”,
成功:功能(数据){
var x=data.item;
控制台日志(数据);
//$('添加').text(x+'添加');
}
});
}
$(文档).ready(函数(){
$(“#添加”)。单击(更新);
});
PHP脚本
目前,我得到的返回是行数。如果我注释掉echo并取消注释echo json,则返回以下内容
{1:{项目:“泄漏”,数量:“2”,商店:“水果蔬菜”}2:{项目:“鸡汤”,数量:“1”,商店:“潘”}
我使用以下脚本成功地实现了这一点
<html>
<head>
<script src="../jquery-3.1.0.min.js"></script>
<script>
function update(){
var x = [{"item":"leaks", "qty":"2", "store":"fruitVeg"},{"item":"chicken stock", "qty":"1", "store":"pantry"}];
var dataSend = JSON.stringify(x);
$.ajax({
url:"updateTest.php",
type: "POST",
data: "data="+dataSend,
success: function(data){
var x = data.item;
console.log(data);
//$('#added').text(x +' Added');
}
});
}
$(document).ready(function(){
$('#add').click(update);
});
</script>
</head>
<body>
<div> <input type='button' value='Add to Shopping' id='add'/></div>
</body>
</html>
函数更新(){
变量x=[{“项目”:“泄漏”,“数量”:“2”,“商店”:“水果蔬菜”},{“项目”:“鸡汤”,“数量”:“1”,“商店”:“食品储藏室”}];
var dataSend=JSON.stringify(x);
$.ajax({
url:“updateTest.php”,
类型:“POST”,
数据:“数据=”+数据结束,
成功:功能(数据){
var x=data.item;
控制台日志(数据);
//$('添加').text(x+'添加');
}
});
}
$(文档).ready(函数(){
$(“#添加”)。单击(更新);
});
php看起来像这样
<?php
$list = stripslashes($_REQUEST["data"]);
$obj = json_decode($list);
echo $item1 = $obj[0]->item;
echo $item2 = $obj[1]->item;
?>
在我看来还可以,不过您只是将这两个值混在一个字符串中,例如2leaks
。