使用bindValue()未绑定到PDOStatement的值

时间:2014-07-16 02:23:35

标签: php pdo

我正在为学校开展一个项目,我需要对用户进行身份验证。下面的代码来自我的书,但我似乎无法让它工作。我在尝试绑定值后检查了查询,查询从不包含实际的电子邮件或密码。有人能告诉我我的代码有什么问题或我做错了什么?我搜索了互联网并确保我的代码与我的书中的代码完全相同。另外,我使用的是正确的凭据。

function is_valid_admin_login($email, $password)
{
    global $db;

    $password = sha1($password);

    $query = 'SELECT adminID FROM administrators
              WHERE adminEmail = :email AND adminPassword = :password';

    $statement = $db->prepare($query);
    $statement->bindValue(':email', $email);
    $statement->bindValue(':password', $password);
    $statement->execute();

    $valid = ($statement->rowCount() == 1);

    $statement->closeCursor();

    return $valid;
}

当我在绑定值后回显查询时,我总是得到:

SELECT adminID FROM administrators
WHERE adminEmail = :email AND adminPassword = :password

我非常感谢帮助,因为我对PHP很新。

0 个答案:

没有答案
相关问题