2011-04-10 76 views
0

我對PHP很陌生,試圖從MySQL字段中選擇數據(在表中)。我使用了下面的查詢。在MySQL查詢中添加PHP變量的正確方法?

$token = $wpdb->query("SELECT ami_st_token_aut 
         FROM $wpdb->users 
         WHERE ID = '".$current_user->ID."' "); 

在ami_st_token_aut的值是一個很大的數字,但是當我回聲$令牌,是呼應了$current_user->ID,而不是大數量的令牌。可能會出現什麼問題?

+0

這不是PHP而是wordpress – 2011-04-10 04:45:23

回答

3

這樣做的兩種方法。

如果你與WordPress做,使用wpdb->prepare功能:

$token = $wpdb->get_var(
    $wpdb->prepare(
    "SELECT ami_st_token_aut FROM $wpdb->users WHERE ID=%d", $current_user->ID 
) 
); 

如果你沒有的WordPress做,使用mysql_real_escape_string功能。

mysql_query(
    "SELECT ami_st_token_aut FROM tablename WHERE ID='" 
    . mysql_real_escape_string($ID) . "'" 
); 
+0

令人驚歎的。非常感謝。 +1 – Sam 2011-04-10 04:47:34

+1

@Sam:+1通常意味着你也給他一個(我做了,他達到了1,所以我猜你沒有),如果它有幫助,你應該接受答案。 – Fredrik 2011-04-10 04:56:24

+0

我不能給姬1,因爲我的代表少於15個。 – Sam 2011-04-10 04:58:42

1

the Wordpress Codex

$wpdb->query函數返回與您的查詢匹配的行數(如果您執行SELECT操作)。

$wpdb->get_var是用於從數據庫中獲取單個值的函數。