JSON_ENCONDE - > getJSON不起作用

时间:2015-07-26 18:27:18

标签: javascript php jquery json

我正在尝试检索数组但是甚至没有任何事情发生在$('#grupos tbody tr')。empty();在.getJSON之外工作但不在里面!!!帮我疯了!!! 有人可以帮我解决这个问题吗!!!

PHP

<?php
include_once('../config/db.php');
$query = "SELECT * FROM grupos";
$result = mysqli_query(conn(),$query);
$res = array();

    while($row = $result->fetch_array())
    {
        array_push($res, array(

            'g_id'          =>          $row[0],
            's_id'          =>          $row[1],
            'termino'       =>          $row[2],
            'fecha'         =>          $row[3]

            ));

    echo json_encode(array('result' => $res));
    }
?>

的Javascript

$(document).ready(function(){
    $.getJSON('http://localhost/clinicaclasses/grupos.php', function(data){
        $('#grupos tbody tr').empty();
    });
});

1 个答案:

答案 0 :(得分:2)

那是因为你的php文件的输出不是有效的JSON。

while($row = $result->fetch_array())
{
    array_push($res, array(

        'g_id'          =>          $row[0],
        's_id'          =>          $row[1],
        'termino'       =>          $row[2],
        'fecha'         =>          $row[3]

        ));

echo json_encode(array('result' => $res));
}

这里你echo每次迭代都有JSON字符串。在 while循环结束后,你回复它

while($row = $result->fetch_array())
{
    array_push($res, array(

        'g_id'          =>          $row[0],
        's_id'          =>          $row[1],
        'termino'       =>          $row[2],
        'fecha'         =>          $row[3]

        ));
}
echo json_encode(array('result' => $res));