PHP / MySQL - 调用成员函数查询()

时间:2016-03-07 10:42:56

标签: php mysql function

我的代码工作正常。 我不知道什么是错的。

public function maintenanceAll()
{
    $zeile = $this->db->query('SELECT * FROM maintenance LIMIT 1');
    $row = $zeile->fetch(PDO::FETCH_ASSOC);

    if (!$row['status']) {
        return true;
    } else {
        return false;
    }
}

现在才来:

[Mon Mar 07 11:30:55.802597 2016] [:error] [pid 6064] [client 5.135.44.40:37955] PHP Fatal error:  Call to a member function query() on string in /home/admin/web/creative-cube.biz/public_html/classes/User.class.php on line 145

我希望有人能帮助我。 :/

//编辑:

(连接数据库)DB.class.php:

class DB {
    public function connect()
    {
        global $Config; 

        try {
            return new PDO('mysql:host='.$Config["SQL_HOST"].';dbname='.$Config["SQL_DB"].'',''.$Config["SQL_USER"].'',''.$Config["SQL_PASS"].'');
        } catch(PDOException $e) {
            return $e->getMessage();
        }
    }
}

User.class.php:

public function __construct()
{
    $this->db = new DB();
    $this->db = $this->db->connect();
}

1 个答案:

答案 0 :(得分:0)

$this->db不是数据库连接,它是一个字符串。检查数据库连接是否仍在正常运行。如果您的连接仍然有效,请确保某些内容不会覆盖$this->db变量。

编辑: 查看您发布的代码,连接存在问题,它返回异常消息,并且设置为$this->db

try {
    return new PDO('mysql:host='.$Config["SQL_HOST"].';dbname='.$Config["SQL_DB"].'',''.$Config["SQL_USER"].'',''.$Config["SQL_PASS"].'');
} catch(PDOException $e) {
    return $e->getMessage();
}