我一直在嘗試幾個小時,通過.ajax文章簡單地調用wordpress dbase中的表,然後返回我想要的值,但在返回的頁面上出現此錯誤:「調用到一個非對象的成員函數get_results()「。在wordpress數據庫中使用自定義表
這裏是我的PHP文件:
<?php
global $wpdb;
if (isset($_POST['state'])) {
$results=$wpdb->get_results("SELECT DISTINCT make FROM cz_cars ORDER BY make ASC");
echo $results[0][0];
exit;
}
?>
這裏是我使用jQuery:當我註釋掉PHP文件數據庫的東西
jQuery(document).ready(function()
{
jQuery("#caryear").change(function()
{
jQuery.ajax(
{
type: "POST",
url: "wp-content/themes/storefront/includes/post-yearmakel.php",
data: ({ 'state' : jQuery("#caryear").val() }),
success: function(msg)
{
jQuery('#carmake').append('' + msg + '');
}
});
});
});
此代碼工作正常,只是回顯一個字符串。我有與其他包括的PHP文件,它被wordpress認可。不知道這裏發生了什麼......我認爲有全球$ wpdb;會使這項工作!
任何想法?
嗨!感謝回覆!沒有一個地方,我可以保存我的PHP文件,因此它有權訪問wp全局數據庫?我改變了我的PHP,所以它有<?php include「../../../../wp-includes/wp-db.php」; \t $ wpdb = new wpdb(「root」,「******」,「pro」,「localhost」);?>在裏面,但現在我得到錯誤:使用未定義的常量WP_DEBUG「。不能相信這是多麼的令人沮喪! – 2011-03-02 05:56:07
np。不幸的是,WP並不是我的專長,但足以說明,WP創建了'$ wpdb' _somewhere_如果你不準備包含它創建的任何地方(CMS的can 。挑剔他們是如何允許包括他們自己的部分),你可以創建這個腳本的緣故自己一次性DB連接 – Shad 2011-03-02 06:03:58
在這種情況下,我會建議創建自己的數據庫連接:'mysql_connect''mysql_select_db''mysql_query' – Shad 2011-03-02 06:10:50