PDO 和行数

PDO and rowcount

我试图使下面的 PDO 查询正常工作,但不知何故它没有。 这就是我的大脑爆炸的程度! 有没有人可以说我做错了什么?

$dbh = new PDO("mysql:host=localhost;dbname=databasename", "user", "pass");
    $stmt = $dbh->prepare("SELECT * FROM `something` WHERE `email`=':email' and `name`=':name'");
    $stmt->bindParam(':email', 'mail@mail.nl',PDO::PARAM_STR);
    $stmt->bindParam(':name', 'name',PDO::PARAM_INT);
    $stmt->execute(); 

    if($stmt->rowCount() == 1)
    {
        echo "row count 1";
    }
    else if ($stmt->rowCount() == 0)
    {
        echo "row count 0";
    }
    else if ($stmt->rowCount() > 1)
    {
        echo "row count greater then 1";
    }

单引号 (') 表示 SQL 中的字符串文字,因此防止 PDO 在其中解析。如果你想使用绑定变量,你应该删除引号(别担心,PDO 会正确处理它们作为字符串):

$stmt = $dbh->prepare
        ("SELECT * FROM `something` WHERE `email`=:email and `name`=:name");