目录
php接受json格式的数据如何解析
Jun 23, 2016 pm 02:17 PM
PHP JSON Jquery
$(document).ready(function(){ var jsonText ="{'user':[{'username':'zhangsan','password':'123'},{'username':'xx','password':'456'}]}"; $("a").click(function(){ $.post('a.php',{data:jsonText},function(data){ alert(data); }); });});
登录后复制
登录后复制
登录后复制
登录后复制
php文件中要如何解析接收到的data,求大神指教???
回复讨论(解决方案)
用json_decode将json字符串转化为数组
$arr = json_decode($_POST['data'],true);print_r($arr);
登录后复制
Array ( [user] => Array ( [0] => Array ( [username] => zhangsan [password] => 123 ) [1] => Array ( [username] => xx [password] => 456 ) ) )
#1楼正解
用json_decode POST过来的参数就可以了
<?php$arr = json_decode($_POST['data'],true);print_r($arr);?>
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
返回值在前端接收的时候为空,alert(data);什么也没有,why??
<?php$arr = json_decode($_POST['data'],true);print_r($arr);?>
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
返回值在前端接收的时候为空,alert(data);什么也没有,why??
你直接打印出接收到的$_POST['data']就知道什么原因了。
<?php$arr = json_decode($_POST['data'],true);print_r($arr);?>
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
返回值在前端接收的时候为空,alert(data);什么也没有,why??
那你直接输出$_POST['data'],瞧瞧
<?php$arr = json_decode($_POST['data'],true);print_r($arr);?>
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
返回值在前端接收的时候为空,alert(data);什么也没有,why??
你直接打印出接收到的$_POST['data']就知道什么原因了。
print_r($_POST['data']);是有值的,json_decode后就没有了。。。
<?php$arr = json_decode($_POST['data'],true);print_r($arr);?>
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
返回值在前端接收的时候为空,alert(data);什么也没有,why??
你直接打印出接收到的$_POST['data']就知道什么原因了。
print_r($_POST['data']);是有值的,json_decode后就没有了。。。
有值又不代表json就能解析,贴出来看看
print_r($_POST['data']);前端接收之后,弹出如下图
是不是json格式不正确啊???
print_r($_POST['data']);前端接收之后,弹出如下图
是不是json格式不正确啊???
是
print_r($_POST['data']);前端接收之后,弹出如下图
是不是json格式不正确啊???
是
$(document).ready(function(){ var jsonText ="{'user':[{'username':'zhangsan','password':'123'},{'username':'xx','password':'456'}]}"; $("a").click(function(){ $.post('a.php',{data:jsonText},function(data){ alert(data); }); });});
登录后复制
登录后复制
登录后复制
登录后复制
json格式不是这样的吗?那json格式要如何来写呢?
把前端传递的json字符串改为
var jsonText ="{\"user\":[{\"username\":\"zhangsan\",\"password\":\"123\"},{\"username\":\"xx\",\"password\":\"456\"}]}";
登录后复制
或者改为
var jsonText ='{"user":[{"username":"zhangsan","password":"123"},{"username":"xx","password":"456"}]}';
登录后复制
另外你最两个大括号之间的逗号是全角的吧,改成半角
print_r($_POST['data']);前端接收之后,弹出如下图
是不是json格式不正确啊???
是
$(document).ready(function(){ var jsonText ="{'user':[{'username':'zhangsan','password':'123'},{'username':'xx','password':'456'}]}"; $("a").click(function(){ $.post('a.php',{data:jsonText},function(data){ alert(data); }); });});
登录后复制
登录后复制
登录后复制
登录后复制
json格式不是这样的吗?那json格式要如何来写呢?
var jsonText ={"user":[{"username":"zhangsan","password":"123"},{"username":"xx","password":"456"}]};
试试可以不
print_r($_POST['data']);前端接收之后,弹出如下图
是不是json格式不正确啊???
是
$(document).ready(function(){ var jsonText ="{'user':[{'username':'zhangsan','password':'123'},{'username':'xx','password':'456'}]}"; $("a").click(function(){ $.post('a.php',{data:jsonText},function(data){ alert(data); }); });});
登录后复制
登录后复制
登录后复制
登录后复制
json格式不是这样的吗?那json格式要如何来写呢?
var jsonText = JSON.stringify({user:[{username:'zhangsan',password:'123'},{username:'xx',password:'456'}]});
登录后复制
如果你发现不支持JSON的浏览器,你可以使用jquery的json插件将js的对象数据转换成json标准格式。
楼主最后怎么解决的 方法分享一下呗
楼主最后怎么解决的 方法分享一下呗
就是按照大家说的把json格式修改了一下,就OK啦,真的是我的json格式写错了。
楼上说的json是正确的
非常感谢大家!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章
仓库:如何复兴队友
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
3 周前
By DDD
Hello Kitty Island冒险:如何获得巨型种子
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前
By 尊渡假赌尊渡假赌尊渡假赌
公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验?
3 周前
By 王林

热门文章
仓库:如何复兴队友
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
3 周前
By DDD
Hello Kitty Island冒险:如何获得巨型种子
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前
By 尊渡假赌尊渡假赌尊渡假赌
公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验?
3 周前
By 王林

热门文章标签

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)