jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php – JSON保存在数据库中并使用JQuery加载大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我创建了一个巨大的JSON-Object并将其保存在我的数据库中.但是当我加载“String”并在PHP中回显它时,我无法访问JQuery中的JSON对象.如果我想将我的JSON对象保存在MysqL数据库中(当我刚创建数组然后用“echo json_encode($arr)”回显它时,我是否需要虑一些事情;“它工作正常,但我需要保存对象用于缓存).

只是一个摘录

如果我只是回显这个JSON-Object,一切正常,但如果我从数据库加载相同的字符串并回显它,它就不起作用.

更新1:忘记告诉我我正在使用带有UTF8_general_ci排序规则的TEXT-Field

更新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;

?&GT

这是脚本,我用JSON-Object加载数据库条目.

更新3:
我想我解决了这个问题.有些破坏潜入我的JSON-Object所以我在输出之前执行此操作:

$output = str_replace("\n", "", $output);
$output = str_replace("\r", "", $output);
$output = str_replace("\r\n", "", $output);

解决方法:

我建议看看你的javascript看到了什么.不要让jQuery为你解释json,而是查看原始数据:

function start() {
    $(".start").click(function () {

        $.post("load_script.PHP", { }, function(data){
                alert(data);
        }, "text");

        return false;
    });
}

例如,如果字符串的一部分由于UTF-8而被奇怪编码,则可能导致它出现.

完成后,如果仍然无法发现问题,请尝试以下代码

var data1, data2;
function start() {
    $(".start").click(function () {

        $.post("load_script.PHP", {src: "db" }, function(data){
                data1 = data;
        }, "text");

        $.post("load_script.PHP", {src: "echo" }, function(data){
                data2 = data;
        }, "text");

        if (data1 == data2) {
           alert("data1 == data2");
        }
        else {
           var len = data1.length < data2.length ? data1.length : data2.length;
           for(i=0; i<len; ++i) {
              if (data1.charAt(i) != data2.charAt(i)) {
                 alert("data1 first differs from data2 at character index " + i);
                 break;
              }
           }
        }

        return false;
    });
}

然后更改PHP代码以从数据库返回数据或简单地回显它,具体取决于post参数:

<?PHP
   if ($_POST['src'] == 'db')) {
      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;
      }
   }
   else {
      $output = '{"247":{"0":"This is a question","1":"","2":"247","3":"0","answers":[["Answer1","960","1"],["Answer 2","962","0"],["Answer 3","961","0"],["Answer 4","963","0"]]},{"248":{"0":"This is a question","1":"","2":"247","3":"0","answers":[["Answer1","960","1"],["Answer 2","962","0"],["Answer 3","961","0"],["Answer 4","963","0"]]}}';
   }

echo $output;
?>

希望有所帮助!

大佬总结

以上是大佬教程为你收集整理的php – JSON保存在数据库中并使用JQuery加载全部内容,希望文章能够帮你解决php – JSON保存在数据库中并使用JQuery加载所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: