2017-02-21 35 views
0

我正在使用自定義主題的wordpress網站,我無法弄清楚如何獲得$ wpdb-> prepare($ query,$ args)的工作。

的問題

我在的wp-content功能/主題/ mytheme的/ PHP/functions.php中它運行$ wpdb->準備($查詢,$參數),以防止SQL查詢注入之前執行查詢並插入一些新的數據。但是,當我運行這個函數時,我得到一個錯誤,在$ wpdb-prepare()運行的那行讀到「調用成員函數prepare()null」。我做了一些Google搜索,發現這意味着$ wpdb尚未定義。

我試過

按照其他線程我在網上找到,我試圖定義

global $wpdb 
內外我的功能,並在functions.php的頂部

。當沒有工作,我試圖把

include_one('/wp-includes/wp-db.php') 

在functions.php的頂部,但仍然沒有。

有沒有人有任何其他想法,我可以嘗試什麼?

回答

1

它調用的功能很好,但它找不到有效的輸入(空)。你用什麼來定義你的表名?我已經有了它之前,$ wpdb將無法運行,除非我已經預先定義它是這樣的:

global $wpdb; 
$table = $wpdb->prefix . "table_name"; 
$sql = $wpdb->prepare("SELECT * FROM {$table} ORDER BY something DESC"); 
$result = $wpdb->get_results($sql , ARRAY_A); 
+1

啊,這是它大聲笑。感謝您爲我清理! – ConorBaumgart