我正在使用CodeIgniter和Ion Auth为客户开发一个定制的Web系统。到目前为止,一切都很顺利,但我刚刚遇到了一个问题,如果我试图设置一个密码与和,该用户无法再登录到系统。
起初,我认为这个问题可能与字符编码有关,因为我使用文字字符串手动设置密码,但如果我直接从HTML表单中输入,也会发生同样的情况。我没有更改Ion Auth中的任何加密/哈希设置,只有站点标题,默认用户组和用于用户名的表属性。
我正在使用CodeIgniter 3和Ion Auth。请让我知道如果你需要更多的信息。
你知道这是怎么回事吗?
1条答案
按热度按时间oewdyzsn1#
我刚刚发现了这个问题,它让我觉得有点愚蠢,但我想我会让其他人知道解决方案,因为如果我有这个问题,我相信其他人一定会。
这个问题与Ion Auth无关,而是与我错误地使用CodeIgniter函数有关。为了从表单中获取密码,我使用了
set_value('password)
,它实际上将HTML的值转义为documented here和written about here。显然,通过使用echo
打印密码,这就是我试图调试的方式,我看不到原始字符串以任何方式被更改,但它对散列产生了影响。解决方案是简单地使用
$this->input->post('password')
来获取密码,因为此函数不会更改原始输入。希望这能帮助到某人。这个故事的寓意是在开始使用任何框架之前先熟悉它,并彻底阅读文档。