gpt4 book ai didi

javascript - 将 PDO 对象转换为 Javascript JSON

转载 作者:行者123 更新时间:2023-11-30 16:32:06 24 4
gpt4 key购买 nike

我目前正在尝试将 PDO 对象转换为 javascript JSON。

这是我的代码:

PHP:

  $personArray = array();
$queryResult = < this gets the valid result of a $statement->fetchall(PDO:FETCH_ASSOC) >

foreach($queryResult as $p){

$personArray[] = array(
"Id" => $p["Id"],
"Name" => $p["Name"],
"Text" => $p["Text"]
);
}

echo json_encode($personArray);

请注意,我之前尝试执行 json_encode($queryResult);,但似乎我必须更改我不想做的所有语句的结尾。

这是我收到的 JS:函数 refreshEntries(){

$.ajax({
url: "< my PHP file >",
type: 'POST',
success: function(returnPDO){

var obj = JSON.parse(returnPDO);

...
}
});

Javascript,更准确地说,JSON.parse(returnPDO); 是断点。我每次都收到 "Uncaught SyntaxError: Unexpected token a " 错误消息,我非常确定这是来自位于数组开头的 array()在 PHP 中。

这里肯定有什么问题,但我不知 Prop 体是什么。我想我知道错误在哪里,但不知道如何解决。有什么帮助吗?

最佳答案

您已经将您的 pdo 作为关联数组获取,那么为什么不直接对您的 pdo 结果进行 json_encode 呢?

  $toReturn = json_encode($queryResult);
echo $toReturn;

此外,您还没有在 ajax 调用中将 dataType: 设置为 json。

  $.ajax({
url: "< my PHP file >",
type: 'POST',
dataType: 'json',
success: function(returnPDO){

var obj = JSON.parse(returnPDO);

...
}
});

关于javascript - 将 PDO 对象转换为 Javascript JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33179949/

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