一、问题描述
如图,在我们使用yii2自带的注册模板进行注册之后,

在利用登陆模块进行测试登陆后,总是出现用户名密码错误的提示,无法进行登陆。

在利用AdminLTE模板进行登陆的时候,出现同样状况。
二、解决办法
检查发现,在导入项目进行数据库迁移时,默认的user表中的password_hash的数据类型为varchar,导致在利用哈希码进行校验密码时由于长度不对而无法登陆 。我们只需要将password_hash字段的数据类型改为text,就可以了。
本文描述了在使用Yii2框架的注册模块后,遇到的无法登陆问题。具体表现为在尝试登陆时,总是收到用户名或密码错误的提示。经过排查,发现数据库迁移时,user表中password_hash字段的数据类型设置不当,导致密码校验失败。解决方案是将password_hash字段的数据类型从varchar更改为text。
如图,在我们使用yii2自带的注册模板进行注册之后,

在利用登陆模块进行测试登陆后,总是出现用户名密码错误的提示,无法进行登陆。

在利用AdminLTE模板进行登陆的时候,出现同样状况。
检查发现,在导入项目进行数据库迁移时,默认的user表中的password_hash的数据类型为varchar,导致在利用哈希码进行校验密码时由于长度不对而无法登陆 。我们只需要将password_hash字段的数据类型改为text,就可以了。
487
2574

被折叠的 条评论
为什么被折叠?