尝试返回值时出现对象对象错误

时间:2014-12-08 20:10:57

标签: php jquery json

我不确定我在这里做错了什么我感觉它与json编码返回有关?我的代码中出现[object object]返回错误。

这是PHP:

<?php
require_once('../config.php');

if(isset($_GET['parcel_id'])) {
    $db = new ezSQL_mysql(DB_USER, DB_PASSWORD, DB_NAME, DB_HOST);

    //count number of comments for the id
    $data2 = $db->get_results("select count(*) from comments where parcel_id=" . $_GET['parcel_id']);
    echo json_encode($data2);
}

?>

的Jquery / JSON:

        $('#searchTable tr').click(function(){
            var parcel_id = $(this).attr('id');
            $('#ParcelNumber').html(parcel_number);

            var parcel_number = $('td:first', $(this).parents('tr')).text();
            $.ajax({
                url: "classes/get-apn-count-comments.php?parcel_id=" + parcel_id,
                type: "GET",
                data: { parcel_id : parcel_id },
                dataType: 'json',
                error: function(SMLHttpRequest, textStatus, errorThrown){
                    alert("An error has occurred making the request: " + errorThrown);
                },
                success: function(data2){
                    //do stuff here on success
                    //$('#ParcelNumber').html(data[0]["apn"]);
                    $('#ViewComments').html('View ' + data2[0] + ' Comments');
                }
            });
        });

1 个答案:

答案 0 :(得分:0)

$('#ViewComments').html('View ' + data2[0] + ' Comments');

在上面的行中,data2 [0]实际上是一个包含一个字段(count)的json对象。

1)在PHP中,将查询更改为:

"select count(*) AS count from comments where parcel_id=" . $_GET['parcel_id'] 

(这将使步骤2中更容易引用)

2)在jQuery中,将其更改为:

$('#ViewComments').html('View ' + data2[0].count + ' Comments');

这应该正确引用你正在寻找的位。