微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php-检查旧密码和新密码的规则

我正在使用确认密码检查旧密码和新密码.

在这里,我想检查OldPassword和New Password是否应该不相同.

我怎样才能做到这一点 ?

这是我的规则:

   public static $rulespwd = array('OldPassword' => 'required|pwdvalidation',
        'NewPassword' => 'required|confirmed|min:1|max:10',
        'NewPassword_confirmation' => 'required',
        );

这是我用于验证的控制器代码

$PasswordData = Input::all();
        Validator::extend('pwdvalidation', function($field, $value, $parameters)
        {
            return Hash::check($value, Auth::user()->password);
        });

        $messages = array('pwdvalidation' => 'The Old Password is Incorrect');

        $validator = Validator::make($PasswordData, User::$rulespwd, $messages);
        if ($validator->passes()) 
        {
            $user = User::find(Auth::user()->id);
            $user->password = Input::get('NewPassword');
            $user->save();
            return Redirect::to('changepassword')->with('Messages', 'The Password information was Updated');
        }

注意:我正在使用模型作为验证规则.如何在模型中执行此操作?

解决方法:

只需使用其他验证规则-as described in the Laravel docs

public static $rulespwd = array('OldPassword' => 'required|pwdvalidation',
    'NewPassword' => 'required|confirmed|min:6|max:50|different:OldPassword',
    'NewPassword_confirmation' => 'required',
    );

另外-为什么将密码限制为10个字符?这很愚蠢-完全没有理由加以限制.您要做的只是降低应用程序的安全性.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐