GET_RESULTS不返回任何内容

时间:2020-05-24 作者:Johnnyboy Gomez

使用$wpdb并获得\\u结果的基本方法是什么?

这是我的代码:

global $wpdb;
$q="SELECT * FROM wp_usermeta WHERE meta_key = \'nickname\' AND user_id = 771";
$result = $wpdb->get_results($q);
echo $result;
查询字符串很好,因为我可以在phpmyadmin中运行它,并且工作正常。在浏览页面时,我并没有得到任何回复。

1 个回复
最合适的回答,由SO网友:Sally CJ 整理而成

$wpdb->get_results() 成功返回数组,因此echo $result;.

相反,您可以使用foreach 要循环显示结果并显示要显示的任何数据,请执行以下操作:

$results = $wpdb->get_results( $q );
foreach ( $results as $row ) {
    echo $row->meta_value . \'<br />\';
}
但我可以看到您正在尝试只选择一行,因此您希望使用$wpdb->get_row() 而不是$wpdb->get_results():

$row = $wpdb->get_row( $q );
if ( $row ) {
    echo $row->meta_value;
}
但话说回来&mdash;因为wp_usermeta 是WordPress用户meta的默认表,如果您只想检索meta值,那么您可以(而且应该更好)使用一个函数&mdash;get_user_meta():

echo get_user_meta( 771, \'nickname\', true );

相关推荐

使用$wpdb->Get_ol从Foridable表中获取记录

我使用强大的Pro作为CRM,其中一个表单有一个名为cust\\u id的字段。现在,我想用特定的cust\\u id获取存储在该表单中的所有记录。我做到了:$form\\u id=7$search\\u id=300;$entries=$wpdb->get\\u col($wpdb->prepare(“从“..wpdb->prefix.”中选择id。其中cust\\u id=%d,form\\u id=%d”的frm\\u项目,$search\\u id,$form\\u id));但