移至 xampp 1.8.3 后出现 pdo 致命错误

pdo fatal error after move to xamp 1.8.3

移动所有 rowCount() 函数后 return 致命错误

Fatal error: Call to a member function rowCount() on a non-object 

我是这样使用这个函数的:

$co = $pdo->query("SELECT * FROM `tbl_users`");
$pages->items_total = $co->rowCount();

这意味着执行查询时出了点问题。也许更新出了点问题,MySQL 不再是 运行ning?验证这一点,确保 MySQL 是 运行ning.

此外,您可以尝试 运行 在 PhpMyAdmin 中执行相同的查询,看看是否可行。如果是,您确定这是 PDO 的问题。如果没有,则 MySQL 服务器一定有问题。

但也许最简单的调试方法是执行如下操作:

$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

有了这个,PDO就会在查询失败的时候抛出异常。然后将查询放在 try ... catch 块中:

try {
    $co = $pdo->query("SELECT * FROM `tbl_users`");
    $pages->items_total = $co->rowCount();
} catch (PDOException $e) {
    echo $e->getMessage();
}

这将为您提供更多调试信息。当查询失败时,异常会被catch块捕获,并输出消息。此消息通常会告诉您问题出在哪里。