PHP中json数组解析

我从一个页面获取到一个json字符串,然后将它转换为json数组再插入到数据库中,但插进去的都是空值,我确定能获取到json字符串。<?phpinclude_once('... 我从一个页面获取到一个json字符串,然后将它转换为json数组再插入到数据库中,但插进去的都是空值,我确定能获取到json字符串。
<?php
include_once('inc/conn.php');
$json_string=$_REQUEST["visitor"];
$addressInfo=json_decode( $json_string,TRUE);
$name=$addressInfo['name'];
$idcard=$addressInfo['idcrd'];
$visitedphone=$addressInfo['visitedphone'];
$address=$addressInfo['address'];
$visitedorganization=$addressInfo['visitedorganization'];
echo"1$visitedphone";
echo"2$address";
echo"3$visitedorganization";
$sql="insert into adress_list(name,idcrad,tel,adress,visitorganization)values('$name','$idcard','$visitedphone','$address','$visitedorganization'); ";这是我的代码,我觉得应该是转换出了问题,求大神解答,急。。。就还有20分,全送啦
$rest=0;
$rest = mysql_query($sql);
echo mysql_error();
if($rest){
echo "恭喜,上传成功!";
}else{
echo "上传失败,请重新上传!";
}
//关闭数据库
mysql_close($con);

?>
{"visitors":[{"visitedphone":"13333333333","organization":"浙江大
学","phone":"13888888888","address":"杭州市浙大路38号","name":"张
三","visitedname":"李
总","idcard":"510181198209108435","visitedorganization":"杭州网络科技有限公司"}]这是得到的结果我用 var_dump(json_encode($addressInfo);得到的结果为null
展开
 我来答
菲凡GT
2014-05-15 · TA获得超过150个赞
知道小有建树答主
回答量:92
采纳率:0%
帮助的人:60.5万
展开全部
你什么情况也没说,那么这样调试。

1:首先保证获取到的$_REQUEST["visitor"] 是json形式?

2:是的话,那么$addressInfo=json_decode( $json_string,TRUE); 这个后,会得到一个数组,那么你这几个值都正常的话,
$name=$addressInfo['name'];
$idcard=$addressInfo['idcrd'];
$visitedphone=$addressInfo['visitedphone'];
$address=$addressInfo['address'];
$visitedorganization=$addressInfo['visitedorganization'];
3:即到达sql插入问题,
$sql="insert into adress_list(name,idcrad,tel,adress,visitorganization)values('$name','$idcard','$visitedphone','$address','$visitedorganization'); ";

不知道你表其它字段结构,把这句 $sql打印出来(echo $sql),简单点,用phpmyadmin到对应库里直接执行sql,那你便知道原因何在了
追问
我用$addressInfo=json_decode( $json_string,TRUE); 
得到的值为null,数据库中都是空的值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Mini_humour
2014-05-15 · TA获得超过223个赞
知道小有建树答主
回答量:221
采纳率:0%
帮助的人:170万
展开全部
我想问下,你的json是怎样生成的,把$_REQUEST获得的结果给我看哈,如果你确定是json_decode出错了的话,可能就是这个原因,我遇到过,不过我还不确定
更多追问追答
追问
我把结果放在补充中啦,麻烦看看吧
追答

你这个结果是不是有问题,少了大括号

你看下,这是我得出的结果,你的结果$addressinfo应该是一个二维数组

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式