【问题标题】:How to pass values from json_encode using PHP to Ajax如何使用 PHP 将值从 json_encode 传递到 Ajax
【发布时间】:2017-07-25 18:36:49
【问题描述】:

这是我的 php 编码值后的 json 文件:

/database/database.php

[{"id":"1","title":"text","text":"ttexte","image":"dsgdsgs","User_id":"1"},{"id":"2","title":"titles","text":"sfsf","image":"safasfa","User_id":"1"}]

这是我的 Ajax 代码 /js/database.js

$.ajax({
    url: "/database/database.php",
    type: "GET",
    dataType: 'json',
    crossDomain: "true",
    success: function(result) {
        if (result.type == false) {
            alert("Error occured:" + result.data);
            return false;
        }
        $.each(JSON.parse(result.data), function(index, obj) {
            $("#get-all").append(

                "<div class='span12'><div class='row'><div class='span8'><h4><strong><a href='#'>" + obj.title + "</div></a></strong></h4> </div></div>" +
                "<div class='row'><div class='span2'><a href='#' class='thumbnail'><img src='" + obj.id + "' alt=''></a></div><div class='span10'>" +
                "<p>" + obj.text + "    </div></p></div>")
            console.log(obj.text);
        });

    }
});

我在 /blogs.php 中使用调用 &lt;script src="js/database.js"&gt;&lt;/script&gt; 检索值

控制台日志:XHR 完成加载:GET "/database/database.php".

我已经调试过了,没有收到值。

【问题讨论】:

  • @ProfessorAllman 我已经看到了那些帖子但没有找到答案,我已经用 Nodejs 完成了这个调用并且可以使用 php 不要。
  • 您是否确认您在 php header('Content-Type: application/json'); 中设置了正确的标头并返回到浏览器?
  • @ProfessorAllman 当我使用该代码在 html 中转换所有...
  • 你能发布database.php的完整源代码吗?请务必编辑任何敏感信息

标签: jquery json ajax


【解决方案1】:

使用 AJAX 返回的结果已经是 JSON 解析的,所以 JSON.parse 不是必需的,这也是它失败的原因。

只需修改你的代码以避免这种情况,你应该没问题。

$.ajax({
url: "/database/database.php",
type: "GET",
dataType: 'json',
success: function(result) {
    if (result.type == false) {
        alert("Error occured:" + result);
        return false;
    }
    $.each(result, function(index, obj) {
        $("#get-all").append(
            "<div class='span12'><div class='row'><div class='span8'><h4><strong><a href='#'>" + obj.title + "</div></a></strong></h4> </div></div>" +
            "<div class='row'><div class='span2'><a href='#' class='thumbnail'><img src='" + obj.id + "' alt=''></a></div><div class='span10'>" +
            "<p>" + obj.text + "    </div></p></div>")
        console.log(obj.text);
    });

}
});

【讨论】:

  • 您好,@HSR 无法使用您的脚本,我已尝试显示相同的消息
  • 我用的是test.php而不是/database/database.php,我现在已经更新了,你能确认你也改了吗?
  • 哦,这很奇怪,我似乎在更改后得到了控制台输出。 imgur.com/rMydle3
  • 我不明白
  • 您的控制台中是否出现任何错误或只是空白?
猜你喜欢
  • 2021-02-06
  • 2014-10-21
  • 2020-04-09
  • 2017-11-16
  • 2012-06-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多