Wordpress wpdb get_var或get_results没有给我结果,但我在phpmyadmin上得到了结果

Wordpress wpdb get_var或get_results没有给我结果,但我在phpmyadmin上得到了结果,wordpress,Wordpress,下面是我的代码,我通过var_dump方法得到了一个查询回音,wpdb get_var和get_results没有给我预期的结果,get_var返回NULL,get_results返回数组 当我在phpmyadmin上运行生成的查询时,它给出了正确的结果。 下面是我的代码 $minAge = xprofile_get_field_data(3471, bp_loggedin_user_id()); $maxAge = xprofile_get_field_data(7475, bp_logged

下面是我的代码,我通过var_dump方法得到了一个查询回音,wpdb get_var和get_results没有给我预期的结果,get_var返回NULL,get_results返回数组 当我在phpmyadmin上运行生成的查询时,它给出了正确的结果。 下面是我的代码

$minAge = xprofile_get_field_data(3471, bp_loggedin_user_id());
$maxAge = xprofile_get_field_data(7475, bp_loggedin_user_id());

$age_q = "SELECT GROUP_CONCAT(distinct ".$wpdb->base_prefix."bp_xprofile_data.user_id) as user_ids FROM ".$wpdb->base_prefix."bp_xprofile_data JOIN ".$wpdb->base_prefix."bp_xprofile_fields ON ".$wpdb->base_prefix."bp_xprofile_data.field_id = ".$wpdb->base_prefix."bp_xprofile_fields.id WHERE field_id =2 AND ".$wpdb->base_prefix."bp_xprofile_data.user_id !=".bp_loggedin_user_id();
    $agewhere = "";

    if($minAge){
      $agewhere .= " AND TIMESTAMPDIFF( YEAR, STR_TO_DATE( ".$wpdb->base_prefix."bp_xprofile_data.value, '%Y-%m-%d' ) , CURDATE( ) ) >= ".$minAge;    
    } 

    if($maxAge){
      $agewhere .= " AND TIMESTAMPDIFF( YEAR, STR_TO_DATE( ".$wpdb->base_prefix."bp_xprofile_data.value, '%Y-%m-%d' ) , CURDATE( ) ) <= ".$maxAge;
    }
    var_dump($age_q.$agewhere);
    if(!empty($agewhere)){
      $ageResults = $wpdb->get_var($age_q.$agewhere);
      var_dump($ageResults);
    }
由var_dump函数生成的查询,如下所示

"SELECT GROUP_CONCAT(distinct wp_bp_xprofile_data.user_id) as user_ids FROM wp_bp_xprofile_data JOIN wp_bp_xprofile_fields ON wp_bp_xprofile_data.field_id = wp_bp_xprofile_fields.id WHERE field_id =2 AND wp_bp_xprofile_data.user_id !=5 AND TIMESTAMPDIFF( YEAR, STR_TO_DATE( wp_bp_xprofile_data.value, '%Y-%m-%d' ) , CURDATE( ) ) >= 18 AND TIMESTAMPDIFF( YEAR, STR_TO_DATE( wp_bp_xprofile_data.value, '%Y-%m-%d' ) , CURDATE( ) ) <= 31"

有人帮我解决这个问题吗?

请确保您已将wp-config.php文件与global$wpdb一起连接到工作文件;在顶端。这两行是必需的..您得到的输出是您所期望的还是它返回NULL相同的错误..是的,我把全局$wpdb;在我的文件头部分,我也期望得到类似于1,2,3,4,5的结果,这是我在服务器的phpmyadmin上启动查询时得到的,但是get_results函数给出了我的空白数组。我太沮丧了:“%Y-%m-%d”是这背后的原因,我想,当我直接将查询放入诸如get\u varSELECT GROUP\u CONCATdistinct wp\u bp\u xprofile\u data.user\u id作为wp\u bp\u xprofile\u数据中的用户id加入wp\u bp\u xprofile\u数据域中的wp\u bp\u\u字段id=wp\u bp\u xprofile\u字段,其中字段id=2和wp\u bp\u xprofile\u数据域中的用户id=5和TIMESTAMPDIFF YEAR,STR_TO_DATE wp_bp_xprofile_data.value,'%Y-%m-%d',CURDATE>=18和TIMESTAMPDIFF YEAR,STR_TO_DATE wp_bp_xprofile_data.value,'%Y-%m-%d',CURDATE捕获我的错误xprofile_get_field_data3481,bp_loggedin_user_id向我提供了锚标记中的值,即所有问题发生的原因。谢谢大家。请确保您已将wp-config.php文件与全局$wpdb一起连接到工作文件;在顶端。这两行是必需的..您得到的输出是您所期望的还是它返回NULL相同的错误..是的,我把全局$wpdb;在我的文件头部分,我也期望得到类似于1,2,3,4,5的结果,这是我在服务器的phpmyadmin上启动查询时得到的,但是get_results函数给出了我的空白数组。我太沮丧了:“%Y-%m-%d”是这背后的原因,我想,当我直接将查询放入诸如get\u varSELECT GROUP\u CONCATdistinct wp\u bp\u xprofile\u data.user\u id作为wp\u bp\u xprofile\u数据中的用户id加入wp\u bp\u xprofile\u数据域中的wp\u bp\u\u字段id=wp\u bp\u xprofile\u字段,其中字段id=2和wp\u bp\u xprofile\u数据域中的用户id=5和TIMESTAMPDIFF YEAR,STR_TO_DATE wp_bp_xprofile_data.value,'%Y-%m-%d',CURDATE>=18和TIMESTAMPDIFF YEAR,STR_TO_DATE wp_bp_xprofile_data.value,'%Y-%m-%d',CURDATE捕获我的错误xprofile_get_field_data3481,bp_loggedin_user_id向我提供了锚标记中的值,即所有问题发生的原因。谢谢大家。