2013-11-27 30 views
0

我想让此查​​询正常工作,但是我的查询必须出错。我可以将所有数据都提取出来,但无法弄清楚如何提取符合特定用户名的数据。这是建立在WordPress与buddypress集成。无法让Wordpress数据库查询正常工作

global $wpdb; 
$ttm_username = bp_get_displayed_user_fullname(); 

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

你从这个函数'bp_get_displayed_user_fullname()'得到用户名吗? –

+0

是的,我可以插入到表中,并从中获取所有数据,但我没有太多的后端经验,所以我不知道我是否在查询正确的... –

+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."' " 
); 
+0

好吧,我看到我很近,我知道这是与该部分的东西只是不知道如何在查询中做到这一点。非常感谢,工作完美:) –

+0

@MichaelHicks很高兴它适合你:) –

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); 
+1

感谢您的提示。非常感激。 –