无法让Wordpress数据库查询工作

时间:2013-11-27 03:36:27

标签: mysql wordpress buddypress

我试图让这个Query工作,但我的查询一定有问题。我可以提取所有数据,但无法弄清楚如何提取与特定用户名匹配的数据。这是建立在wordpress与buddypress集成。

global $wpdb;
$ttm_username = bp_get_displayed_user_fullname();

$trackingData = $wpdb->get_results("SELECT * FROM `wp_shipping_numbers` WHERE `username` = $ttm_username ");

2 个答案:

答案 0 :(得分:1)

如果您使用bp_get_displayed_user_fullname()函数获取用户名,则会返回字符串值。

$wpdb->get_results(
    "SELECT * FROM `wp_shipping_numbers` WHERE `username` = $ttm_username "
);

使用

$wpdb->get_results(
    "SELECT * FROM `wp_shipping_numbers` WHERE `username` = '".$ttm_username."' "
);

答案 1 :(得分:1)

您将$ttm_username作为文本放在字符串中,而不是字符串。所以这需要修复。此外,为了节省格式化和调试,我执行以下操作:我喜欢使用单引号来描述字符串。我喜欢在设置字符串时将查询分解为更容易消化的“每行”块。

global $wpdb;
$ttm_username = bp_get_displayed_user_fullname();

$query = 'SELECT *'
       . ' FROM `wp_shipping_numbers`'
       . ' WHERE `username` = ' . $ttm_username
       ;
$trackingData = $wpdb->get_results($query);