Javascript 没有正确返回JSON数据

Javascript 没有正确返回JSON数据,javascript,php,json,Javascript,Php,Json,嘿,我不经常使用PHP,可能一年一次,而且我在正确返回数据时遇到了很多问题。基本上,我得到一个对象,它似乎在响应文本中包含我的数据,我不知道为什么。如果有人能向我解释为什么会发生这种情况,我将非常感激 这是来自后端的代码 if(isset($_POST['action']) && !empty($_POST['action'])) { switch ($_POST['action']){ case'getCandidates' : {

嘿,我不经常使用PHP,可能一年一次,而且我在正确返回数据时遇到了很多问题。基本上,我得到一个对象,它似乎在响应文本中包含我的数据,我不知道为什么。如果有人能向我解释为什么会发生这种情况,我将非常感激

这是来自后端的代码

if(isset($_POST['action']) && !empty($_POST['action'])) {
    switch ($_POST['action']){
        case'getCandidates' :
        {
            $bus = array(
                'latitude' => $row['lat'],
                'longitude' => $row['lng'],
                'icon' => './images/' . $row['busColor'] . '.png'
            );
            array_push($json, $bus);
            $query = "SELECT * from candidates WHERE  status = '$status' AND category = '$category' AND location = '$location'";
            $returnRows = $db->con->query($query);
            if ($returnRows->num_rows > 0) {
                $x = 0;
                // output data of each row
                while($row = $returnRows->fetch_assoc()) {
                    $object = new stdClass();
                    $object->status = $row["status"];
                    $object->first_name = $row["first_name"];
                    $object->last_name = $row["last_name"];
                    $object->category = $row["category"];

                    array_push($aResult, $object);

                }
            } else {
                $aResult[0] = "No results";
            }

//                $aResult['result']  = mysql_fetch_object($returnRows);;
            }
这是前端代码

returnedCandidates = $.ajax({
    url: "../php/admin.php",
    type: 'POST',
    dataType: 'json',
    data: {action: 'getCandidates'},
    success: function(data, textStatus, jqXHR) {

        alert(data);
    }});
console.log(JSON.parse(returnedCandidates[0]));
这是使用php返回数据的行。我忘记加了

打印(json编码($aResult))

注释行:

//print_r(json_encode ($aResult));

然后像这样返回:

return (json_encode ($aResult));

不要使用打印返回

请尝试以下代码:

header('Content-Type: application/json');
echo json_encode($aResult);

对不起,我正在使用打印返回!使用
echo json\u encode($aResult)什么是temp1?它是数据吗?如果不是,数据中返回的是什么?不,不,运气不好,这真的让我很烦。我通常在c#中工作,因此Php现在有点令人困惑。这段代码不可能不工作;)我的意思是,如果不了解您向我们展示的代码的上下文,没有人会给您更好的答案。我不知道。我实际上有这个,但打印r不是echo,它所做的只是在responsetext中返回数据。。。。。这就是我现在需要的。老实说,这对我来说有点扫兴。