1

我正在过渡到 PDO,简单地说,我想从表中返回一个值(而且我觉得没有正确处理它真的很愚蠢)。我没有收到任何错误,但也没有值,应该有:)

 try {
        $sql = "SELECT `column_name` FROM `table` ORDER BY `id` DESC LIMIT 1";
        $query = $this->handler->query($sql);
        $result = $query->fetchColumn();
        print_r($result);
    } 
    catch(PDOException $e) {
        return false;
    }
    return true;
4

1 回答 1

5

打印错误信息:

catch(PDOException $e) {
    print_r($e->getMessage());
    return false;
}

如图所示,如果您已正确连接到数据库,这将起作用。检查您的对象是否成功连接到数据库,并且您的列名和表名是否正确。

我的一个数据库类的片段:

/**********************************************************************
*  Try to connect to mySQL database
*/
public function connect($dbuser, $dbpassword, $dbhost ,$dbname)
{
    try {
        $this->dbh = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpassword);
        $this->dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        return true;
    } catch (PDOException $e) {
        $this->setError($e->getMessage());
    }
}
于 2012-08-20T13:34:04.853 回答