2
function get_entry_count($pagename) {
    global $wpdb;
    $count = $wpdb->get_results("SELECT COUNT( * ) FROM wp_fpc_rg_lead_detail WHERE form_id =12 AND field_number =5 AND value =  '$pagename'" );
    return $count[0]->count;
    }

    $numofpeople = get_entry_count($post->post_title);
    echo "$numofpeople people filled out the form";

我正在尝试运行上面的查询并输出匹配的记录数。如果我添加:

print_r($count);

在返回命令之上,我得到了这个:

Array ( [0] => stdClass Object ( [COUNT( * )] => 7 ) )

7条记录;并且返回值应该是 7。

但是,返回的值( $count[0]->count; )似乎为空。我敢肯定这是愚蠢的,但我就是无法让它工作。

4

1 回答 1

2

尝试COUNT(*)在查询中给您的别名。然后您应该能够将别名引用为对象的属性。在下面的示例中,我使用过lead_detail_count,但可以随意将其更改为您想要的任何内容。

function get_entry_count($pagename) {
    global $wpdb;
    $count = $wpdb->get_results("SELECT COUNT( * ) as lead_detail_count FROM wp_fpc_rg_lead_detail WHERE form_id =12 AND field_number =5 AND value =  '$pagename'" );
    return $count[0]->lead_detail_count;
}

get_results还可以采用第二个参数来更改返回值,可能值得一看。法典的链接如下。 http://codex.wordpress.org/Class_Reference/wpdb#SELECT_Generic_Results

于 2013-02-14T01:21:52.497 回答