致命错误:在布尔值上调用成员函数rowCount()

时间:2017-11-22 15:41:55

标签: php mysql

我正在尝试练习PDO。阅读一些指南,但我不知道这是什么错误。任何帮助将不胜感激。

的config.php

<?php
try {
    $db = new PDO('mysql:host=localhost;dbname=phpdb;charset=utf8mb4', 
'root', 
'Asdqwe123');
     if (!$db) {
        die('Connect from database error');
    }
} catch (Exception $e) {
    echo $e->getMessage();
}
?>

的login.php

<?php
require 'config.php';

if (isset($_POST['submit'])) {
    try {
        $username = $_POST['username'];
        $password = $_POST['pass'];

        $stmt = $db->prepare("SELECT * FROM login WHERE user = ? AND pass = 
?");
        $stmt->execute(array($username, $password));
        $row = $stmt->fetch();

        if ($row > 0) {
            echo "Success";
        } else {
            echo "Worng password or Username";
            header('Refresh: 1, url=index.php');
        }
    } catch (Exception $e) {
        $e->getMessage();
    }
}
?>

更新: 谢谢!现在一切正常。 dsn不正确。

1 个答案:

答案 0 :(得分:1)

我认为您的问题是连接字符串。 localhost, dbname应为localhost; dbname