2016-02-18 111 views
2

我試圖通過提供其名稱來獲取組織的標識。 我有以下代碼:無法將類wpdb的對象轉換爲字符串

$orgid= $wpdb->get_var("SELECT organisationid FROM $wpdb->$table_name1 WHERE organisationname=' " . $organisation . "'"); 

此行返回此錯誤: 開捕致命錯誤:

Object of class wpdb could not be converted to string 

我想重複這個ID到頁面上。

我已閱讀食譜,但不明白。我怎樣才能解決這個問題?

+0

有一個空間,在這裏''刪除 ' 「$組織。」'。 ''「。$ organization。」''並確保它拼寫正確'organisaitonname' - 可能是你的db中的'organisationname'?無論如何,這就是它應該如何拼寫的。並對該變量執行var_dump。使用'trim()'也應該引入空格。 –

+0

嗨弗雷德,我已經這樣做,但它並沒有解決我的問題。謝謝 – Josh

+1

可以在'FROM $ wpdb - > $ table_name1'中。從我到目前爲止發現的錯誤信息中,嘗試使用大括號括起來,即:根據這裏的發現,從'{$ wpdb - > $ key}'https://wordpress.org/support/topic/object- wpdb-could-be-converted-to-string-1 –

回答

5

如果你打算使用的字符串變量裏面的變量,記得用花括號把它包起來:

"SELECT organisaitonid FROM {$wpdb->$table_name1} WHERE organisaitonname = '" . $organisation . "'" 
         // ^important  ^

注:只要確保的$table_name1值不對應的$wpdb的屬性當然,以便它匹配。

+0

這很好。謝謝!另一個需要注意的是,你不需要$ wpdb->在{$ wpdb - > $ table_name1} – Josh

2

也嘗試

$wpdb->table_name1 

代替:

$wpdb->$table_name1 

沒有美元 「$」

+0

ha!爲我工作 –