我创建了一个庞大的JSON对象并将其保存在数据库中。但是当我在PHP中加载“字符串”并将其输出时,我无法在JQuery中访问JSON对象。如果我想将我的JSON对象保存在MySQL数据库中(当我只创建数组并用“echo json_encode($arr);”来输出它时,它可以正常工作,但我需要保存对象以进行缓存),那么我需要考虑什么吗?
这个代码块负责加载脚本,并应该弹出一个提示框,显示"这是一个问题"。
{"247":{"0":"这是一个问题","1":"","2":"247","3":"0","answers":[["答案1","960","1"],["答案2","962","0"],["答案3","961","0"],["答案4","963","0"]]},{"248":{"0":"这是一个问题","1":"","2":"247","3":"0","answers":[["答案1","960","1"],["答案2","962","0"],["答案3","961","0"],["答案4","963","0"]]}}
只是一小部分内容
如果我只是输出这个JSON对象,一切都正常,但是如果我从数据库中加载相同的字符串并将其输出,则不起作用。
更新1:忘记告诉您我正在使用UTF8_general_ci排序的TEXT字段
更新2:也许还需要一些代码:
function start() {
$(".start").click(function () {
$.post("load_script.php", { }, function(data){
alert(data[247][0]);
}, "json");
return false;
});
}
这个代码块负责加载脚本,并应该弹出一个提示框,显示"这是一个问题"。
<?php
require_once('connect.php');
$ergebnis = mysql_query("SELECT text FROM cache_table ORDER BY RAND() LIMIT 1");
while($row = mysql_fetch_object($ergebnis)) {
$output = $row->text;
}
echo $output;
?>
这是脚本,我在其中使用JSON对象加载数据库条目。
更新3: 我认为我解决了这个问题。我的JSON对象中有一些错误,所以在输出之前我进行了如下处理:
$output = str_replace("\n", "", $output);
$output = str_replace("\r", "", $output);
$output = str_replace("\r\n", "", $output);