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

标签 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();
        }
    }
}

用户.class.php:

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

最佳答案

$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();
}

关于PHP/MySQL - 调用成员函数 query(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35841662/

相关文章:

php - 通过 Mac 的撇号无法正确保存到数据库

php - 在不运行控制台命令的情况下清理缓存的最佳方法是什么?

php - 我应该将 Unix 时间戳转换为 "hour"时间戳吗?

聚合函数中的mysql性能

javascript - 在 JS 中查找字符串中的前进元素的函数不起作用

php - 如何拆分值(value)

mysql - 即使新值等于现有主键也能够输入多个值

javascript - 无法获取更改变量的函数

c++ - 求数次幂的递归函数

javascript - PHP 和 MySQL 的自动建议教程