Php PDO语句在活动主机上不起作用

Php PDO语句在活动主机上不起作用,php,pdo,Php,Pdo,PDO语句在本地主机上工作,但在活动主机上无法工作。下面是一个在本地主机上运行良好的示例,但在活动主机上rowCount()始终返回0。有人请帮帮我 $stmt = $pdo->prepare("SELECT * FROM customer WHERE email = :email AND password = :password"); $stmt->execute(array( ':email' => $uemail,

PDO语句在本地主机上工作,但在活动主机上无法工作。下面是一个在本地主机上运行良好的示例,但在活动主机上rowCount()始终返回0。有人请帮帮我

$stmt = $pdo->prepare("SELECT * FROM customer WHERE email = :email AND password = :password");
        $stmt->execute(array(
            ':email' => $uemail,
            ':password' => $pass
        ));
        $count = $stmt->rowCount();

PDO语句::行计数

PDOStatement::rowCount()返回受DELETE、INSERT或UPDATE语句影响的行数

这不适用于
SELECT
,具有讽刺意味但却是真的:)

解决方法:

对于大多数数据库,PDOStatement::rowCount()不返回受SELECT语句影响的行数。相反,请使用PDO::query()发出一个SELECT COUNT(*)语句,该语句的谓词与预期的SELECT语句相同,然后使用PDO语句::FETCHTCOLUMN()检索将返回的行数。然后,应用程序可以执行正确的操作

甚至不应该在本地主机上工作。您在本地主机上对结果的解释不正确


添加
$pdo->setAttribute(pdo::ATTR_ERRMODE,pdo::ERRMODE_异常)在连接打开后立即执行。另外,在打开
后立即将错误报告添加到文件顶部,检查您的实时主机是否支持PDONote to self:“
rowCount()
不适用于
SELECT
rowCount()
不适用于
SELECT
rowCount()
不适用于
SELECT
”-明白了。