$ wpdb致命错误

时间:2011-11-08 08:42:23

标签: wordpress

我在指向Wordpress中的数据库时遇到问题。我试图包含全局$ wpdb,但它不起作用。我还为wp-load.phpwp-db.php,wp-config.php完成了PHP包含,但仍无法修复。

它说,

  

致命错误:在非对象上调用成员函数get_results()   在   C:\ XAMPP \ htdocs中\ WordPress的\可湿性粉剂内容\主题\ cv_test \ searchresult_details.php   第47行

抱歉,我是Wordpress开发的初学者。任何帮助表示赞赏。感谢。

    include_once('http://localhost/wordpress/wp-config.php');
include_once('http://localhost/wordpress/wp-load.php');
include_once('http://localhost/wordpress/wp-includes/wp-db.php');

function retrieveClientDesc()
{
    global $wpdb;

    $query = "SELECT client_desc FROM wp_client WHERE client_name =  'Cal'";
    $result = $wpdb->get_results($query, OBJECT);



    for($i = 0; $i<=count($result); $i++)
    {
        $clientDesc = ($result[$i]->client_desc);
        echo $clientDesc;
    }

    print_r($result);
}

这是代码的一部分。它一直说我的$ result部分有一个致命的错误。

4 个答案:

答案 0 :(得分:2)

我曾经遇到过这个问题,这就是我能够解决的问题。

global $wpdb, $table_prefix;

if(!isset($wpdb))
{
    //the '../' is the number of folders to go up from the current file to the root-map.
    require_once('../../wp-config.php');
    require_once('../../wp-includes/wp-db.php');
}

答案 1 :(得分:1)

感谢各位的帮助。虽然管理过这个问题。

include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-load.php' );

答案 2 :(得分:0)

global $wpdb;替换为$wpdb = new WPDB;。 wpdb对象尚未启动。

答案 3 :(得分:0)

$wpdb->get_results( $query );中删除参数对象,然后尝试使用下面的代码

global $wpdb;
$table = "{$wpdb->prefix}client"
$query = "SELECT client_desc FROM wp_client WHERE client_name =  'Cal'";
$result = $wpdb->get_results( $query );