在laravel中,我想检查用户是否输入了当前密码,而不是检查存储在数据库中用户数据中的密码。如果正确,则继续,否则给予消息密码不正确。
我是新的laravel所以没有得到确切的想法。
先谢了。
$('#pwd').blur(function(){
var oldpwd=$('#pwd').val();
var uid = $('#id').val();
console.log(uid);
if(oldpwd != "")
{
$.ajax({
url : "{{ url/profile/checkOldPwd}}",
data : { oldpwd:oldpwd , uid:uid },
type : "POST",
success : function(data) {
if(data == 0){
$("#msg-old").show();
$("#msg-old").html("Password is Incorrect!");
$("#pwd").val("");
$("#pwd").focus();
}
else
{
$("#msg-old").hide();
$("#msg-old").html("");
}
}
});
}
});
字符串
9条答案
按热度按时间7jmck4yq1#
正如Hiren所提到的,你可以使用默认的注册散列器,因为它被传递给所使用的特定UserProvider。默认值为
Illuminate\Hashing\BcryptHasher
。你可以通过几种方式使用它:
1.从容器中取出
字符串
1.使用Facade
型
1.出于兴趣,使用通用的php函数
password_verify
也可以工作。然而,这是可行的,因为它使用的默认哈希算法是bcrypt。型
gfttwv5a2#
可以使用hash:check方法。
使用哈希创建密码:
字符串
检查密码:
型
ep6jt1vc3#
当用户尝试访问该页面时,将其重定向到授权页面。
执行 AJAX 调用,然后在php中执行以下操作:
字符串
我没有测试过这个,所以它可能不起作用。
vuktfyat4#
哇,其实很简单:
字符串
验证下的字段必须与经过身份验证的用户的密码匹配。
对于未来的人来说:
此规则被重命名为current_password,目的是在Laravel 9中删除它。请改用“当前密码”规则。
所以
型
来源
3wabscal5#
密码是否正确,在laravel PHP中验证密码:就这么做
字符串
点击upvote:)请
ymdaylpp6#
第一个月
ttcibm8c7#
laravel 6.* 中的身份验证逻辑位于“vendor\laravel\framework\src\Illuminate\Foundation\Auth\AuthenticatesUsers.php”中。在该文件中,您将找到sendFailedLoginResponse()方法,我们将在LoginController.php上覆盖该方法
字符串
此自定义方法验证数据库中是否存在用户,查找您在模型上设置的唯一值。如果用户在数据库中,则检查密码。然后,您可以使用
型
在你的刀片文件上请记住,您从“resources\lang\en\auth.php”调用这些auth.* 文件
gv8xihay8#
1.使用 AJAX 调用访问服务器路由。
1.检查
auth()->attempt($request->only('email', 'password'))
的结果1.返回带有消息和HTTP状态码的JSON(如果成功则返回200,如果失败则返回400)。
1.将
success()
方法中的消息显示给div。如果是错误,将error()
方法中的错误消息显示给div。v6ylcynt9#
没有一个答案提到Hash类在哪里!我们首先需要使用Hash
字符串
现在我们可以使用check方法
型