Javascript json对象返回';“未定义”;值和实际值

Javascript json对象返回';“未定义”;值和实际值,javascript,php,jquery,json,Javascript,Php,Jquery,Json,所以,我在这里查看了类似的问题,但仍然找不到我的问题的答案。 出于某种原因,我似乎在json对象中获得了“未定义的值和实际值。我从php文件中接收这些值。php文件的代码如下所示: $sql = "SELECT distinct rackID FROM rackusage where startTime like '%".$curdate."%'"; $res = mysql_query($sql); while($r = mysql_fetch_assoc($res)){

所以,我在这里查看了类似的问题,但仍然找不到我的问题的答案。 出于某种原因,我似乎在json对象中获得了“未定义的值和实际值。我从php文件中接收这些值。php文件的代码如下所示:

$sql = "SELECT distinct rackID FROM rackusage where startTime like '%".$curdate."%'";
$res = mysql_query($sql);
while($r = mysql_fetch_assoc($res)){


        // Queries to get respective values to put inside my array

        $temp[] = array('id' => (int) $r['rackID']); 
        $temp[] = array('rackName' => (string) $rackname);
        $temp[] = array('uptime' => (int) $uptime); 
        $temp[] = array('downtime' => (int) $downtime); 
        $temp[] = array('utilization' => (int) $utilization);
    }   echo json_encode($temp);
输出字符串如下所示:

$sql = "SELECT distinct rackID FROM rackusage where startTime like '%".$curdate."%'";
$res = mysql_query($sql);
while($r = mysql_fetch_assoc($res)){


        // Queries to get respective values to put inside my array

        $temp[] = array('id' => (int) $r['rackID']); 
        $temp[] = array('rackName' => (string) $rackname);
        $temp[] = array('uptime' => (int) $uptime); 
        $temp[] = array('downtime' => (int) $downtime); 
        $temp[] = array('utilization' => (int) $utilization);
    }   echo json_encode($temp);
[{“id”:1},{“rackName”:“xyz”},{“正常运行时间”:119},{“停机时间”:0},{“利用率”:0},{“id”:2},{“rackName”:“abc”},{“正常运行时间”:122},{“停机时间”:0},{“利用率”:0},{“id”:3},{“rackName”:“pqr”},{“正常运行时间”:114},{“停机时间”:0},{“利用率”:0}]

JS代码是:

        function workwithdate(curdate){
            $.ajax({
               type: "Post",
                url: 'senddata.php',
                data:{'selectDate': curdate},
                async: false,
                success: function(data){
                    if(data){
                        alert(data);
                        recData= $.parseJSON(data);
                        //recData = data;
                        console.log(recData);
                         alert(recData);
                         alert(recData.length);

                        $.each(recData, function(idx, la){
                          var someid = la.id;
                            console.log(someid);
                          var rName = la.rackName;
                            console.log(rName);
                          var rUptime = la.uptime;
                            console.log(rUptime);
                        });
       }
                }
            });
        }
我的输出如下所示:


TIA

您希望每行有一个关联数组,因此:

while($r = mysql_fetch_assoc($res)){
    $temp[] = array(
        'id' => (int) $r['rackID'], 
        'rackName' => (string) $rackname,
        'uptime' => (int) $uptime,
        'downtime' => (int) $downtime, 
        'utilization' => (int) $utilization
    );
}   

senddata.php返回的是一个由单个属性对象填充的数组,而不是一个包含一组属性的对象。