gpt4 book ai didi

hash - CakePHP 3.0 - 更改密码时比较数据库密码和旧密码

转载 作者:行者123 更新时间:2023-12-01 02:08:36 25 4
gpt4 key购买 nike

我正在使用 CakePHP 3.0,我想将数据库密码与在“更改密码”功能的表单中输入的旧密码进行比较。但是我无法这样做,因为密码是散列的,即使我们使用相同的密码,每次散列的密码也不同。

请帮助我。

提前致谢,
近战

最佳答案

我会在您的 UsersTable 的验证器中执行此操作。

src/Model/Table/UsersTable.php

$validator
->notEmpty('current_password')
->add('current_password', 'custom', [
'rule' =>

function($value, $context) {
$query = $this->find()
->where([
'id' => $context['data']['id']
])
->first();

$data = $query->toArray();

return (new DefaultPasswordHasher)->check($value, $data['password']);
},
'message' => 'Current password is incorrect!'
]);

Custom validation rules

关于hash - CakePHP 3.0 - 更改密码时比较数据库密码和旧密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30780552/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com