Javascript 显示Json数据jQuery PHP MySQL

Javascript 显示Json数据jQuery PHP MySQL,javascript,php,jquery,mysql,json,Javascript,Php,Jquery,Mysql,Json,我找不到我的问题的答案…事实上,我对jQuery和JSON是新手 在登录页面上,我想在页面加载时显示顶级客户和顶级曲目。 Iv通过php中的echo显示它们,但我想创建JSON对象并将其发送到login…在那个里循环并在无序列表中显示它 你们能帮我创建JSON并在jquery中显示它吗 这是我的密码: jQuery: /* Function to load top Customers */ function loadCustomers() { /* Create d

我找不到我的问题的答案…事实上,我对jQuery和JSON是新手

在登录页面上,我想在页面加载时显示顶级客户和顶级曲目。 Iv通过php中的echo显示它们,但我想创建JSON对象并将其发送到login…在那个里循环并在无序列表中显示它

你们能帮我创建JSON并在jquery中显示它吗

这是我的密码:

jQuery:

/*  Function to load top Customers  */
    function loadCustomers() {

        /* Create data string to call functions in php*/
        var dataString ="function1=loadCustomers&function2=loadTracks";

        $.ajax({
            type:"GET",
            url: "login.php",
            data: dataString,
            dataType: "json",

            success: function(data) {
                $("#error").show();
                $("#errormsg").html(data.FirstName);

                //how can i display Json data in unordered list ? #customerList

            },

            error: function() {
                $("#error").show();
                $("#errormsg").text("cant display data");
            }

        });
    }
PHP:


从代码上看,您似乎是在对多个客户进行响应,但在jQuery中,您直接访问数据,而不访问数组。所以应该是这样的

$.ajax({
    type:"GET",
    url: "login.php",
    data: dataString,
    dataType: "json",

    success: function(data) {
        var items = [];
        $.each( data, function( key, val ) {
            items.push( "<li id='" + key + "'>" + val + "</li>" );
        });

        $( "<ul/>", {
            "class": "my-new-list",
            html: items.join( "" )
        }).appendTo( "#customerList" );
    },

    error: function() {
        $("#error").show();
        $("#errormsg").text("cant display data");
    }
});
$.ajax({
键入:“获取”,
url:“login.php”,
数据:dataString,
数据类型:“json”,
成功:功能(数据){
var项目=[];
$。每个(数据、函数(键、值){
items.push(“
  • ”+val+“
  • ”); }); $(“
      ”{ “类”:“我的新列表”, html:items.join(“”) }).附于(“#客户列表”); }, 错误:函数(){ $(“#错误”).show(); $(“#errormsg”).text(“铁路超高显示数据”); } });
    问题是我无法从PHP接收JSON数据。 经过几个小时的谷歌搜索和尝试不同的解决方案,我终于发现了一个错误

    从数据库读取数据时,必须将其设置为utf-8字符集

    我用utf8_编码函数在代码中修复了这个问题。。。 您必须在PDO对象的新定义中进行设置:

     $conn= new PDO("mysql:host=$server;dbname=$database;charset=utf8", $user, $password);
        $conn->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
    
    更改后,我将发送JSON数据

     $conn= new PDO("mysql:host=$server;dbname=$database;charset=utf8", $user, $password);
        $conn->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);