为了账号安全,请及时绑定邮箱和手机立即绑定

如何解码发布到 php 的 jQuery json 数据

如何解码发布到 php 的 jQuery json 数据

PHP
函数式编程 2021-07-01 16:01:03
我有一个使用 jQuery 将表单数据发送到 php 的网页。我想解码数据数组并循环遍历它,使用 php print_r 显示四个值中的每一个。这是将数据发布到 php 的 jQuery 函数:<script type="text/javascript">function postData() {    return $.ajax({    var datastring = $("#echo_test").serialize();    $.ajax({       type: "POST",       url: "echo_test.php",       data: {post: datastring},    });});}</script>这是 php 函数 echo_test:<?php$obj = json_decode($_POST['post']);print_r($obj['firstname']);?>我认为 json_decode 是错误的,因为发布的数据不是 json 格式。当我单击调用 jQuery 函数的按钮时,php 页面在浏览器中打开但它是空白的,没有任何回显。理想情况下,我会遍历 $obj 以在屏幕上显示四个值中的每一个。最终我会将数据发布到云服务器上的 Postgres。现在,我正在本地测试它以验证数据,因为我是从 jQuery 将数据传递给 php 的新手。感谢您对此的任何帮助。
查看完整描述

3 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

form.serialize() 以查询字符串格式发送数据。parse_str() 函数将查询字符串解析为变量。


<?php

parse_str($_POST['post'], $obj);

print_r($obj);

?>


查看完整回答
反对 回复 2021-07-09
?
胡说叔叔

TA贡献1804条经验 获得超8个赞

你需要做的是使用 parse_str,但正确的是:


<?php

parse_str($_POST['post'], $obj);

print_r($obj['firstname']);

?>


查看完整回答
反对 回复 2021-07-09
  • 3 回答
  • 0 关注
  • 122 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信