首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >phpass不起作用

phpass不起作用
EN

Stack Overflow用户
提问于 2012-08-23 16:10:35
回答 1查看 676关注 0票数 1

我在创建帐户时散列密码,并且它可以工作(密码设置为VARCHAR(60)),但当我尝试这样做时:

代码语言:javascript
复制
    $query = $this->CI->db->query("SELECT * FROM users WHERE email = ?", $email);

    if ($query->num_rows() > 0) {
        $user_pass = $query->row()->password;

        $hasher = new PasswordHash(PHPASS_HASH_STRENGTH, PHPASS_HASH_PORTABLE);

        if ($hasher->CheckPassword($user_pass, $pass)) {
            return true;
        } else {
            return false;
        }
    } else {
        return false;
    }

它总是返回false。有什么想法可以解释为什么会这样吗?(我提供的密码是正确的)

EN

回答 1

Stack Overflow用户

发布于 2012-09-27 17:02:48

我认为您已经颠倒了检查密码字段。必须是这样的:

代码语言:javascript
复制
$hasher->CheckPassword(password which has to be checked, password from database).

这是有区别的,因为检查密码将对要检查的密码进行散列。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12087348

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档