我正在切换到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;
打印错误消息:
catch(PDOException $e) {
print_r($e->getMessage());
return false;
}
如图所示,如果您已正确连接到数据库,这将起作用。请检查对象是否已成功连接到数据库,以及是否具有正确的列名和表名。
我的一个DB类的片段:
/**********************************************************************
* 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());
}
}