gpt4 book ai didi

php - 如何通过ajax访问json_decode()数据

转载 作者:行者123 更新时间:2023-12-01 07:41:17 25 4
gpt4 key购买 nike

我目前正在编写一个简单的ajax脚本来练习我的ajax技能,我正在使用serializeArray()方法通过ajax提交表单,我能够成功通过它,但无法对其执行任何操作数据。这是我当前使用的ajax脚本

 var submit_post = $("#submit-post");
$(submit_post).on('click',function (e)
{
e.preventDefault();
$.ajax(
{
method:'POST',
data:
{
form:JSON.stringify($("#emp-post-form").serializeArray())
},success:function(data)
{
console.log(data);
},dataType:'text'
})
})

在后端我按以下方式处理数据

if(isset($_POST['form']))
{
$form_data = [];
$form_data = json_decode(stripslashes($_POST['form']),true);
var_dump($form_data);
}

当我 var_dump() 发布数据时,以下是我的数据格式

   Array
(

[0] => Array
(
[name] => emp-id-list
[value] => 1248
)

[1] => Array
(
[name] => emp-first-name
[value] => John
)

[2] => Array
(
[name] => emp-last-name
[value] => King
)

[3] => Array
(
[name] => title
[value] => Post title
)

[4] => Array
(
[name] => post-content
[value] => Some Post
)

)

但是我如何使用这些数据,例如,如果我想要回显标题名称,则以下代码将不起作用

echo $_POST['title'];

接下来我应该做什么才能使用它?

PS:我已经在 php 中成功使用了 serialize() ,然后使用了 parse_str() ,但随着我的学习,我只需要针对这个问题给出特定的答案,而不是替代它

最佳答案

简化整个过程并使用serialize()对整个表单进行表单编码,就像不使用ajax发送表单一样

$.ajax({
url:'...',
method: 'POST',
data: $("#emp-post-form").serialize(),
success: function(data) {
console.log(data);
},
dataType: 'text'
})

然后,表单元素中的所有 name 将直接在 $_POST 中可用

$title=  $_POST['title'];
$emp_fName = $_POST['emp-first-name'];

关于php - 如何通过ajax访问json_decode()数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47914737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com