Laravel 密码及密码_确认验证

我一直在使用这个来编辑用户帐户信息:

$this->validate($request, [
'password' => 'min:6',
'password_confirmation' => 'required_with:password|same:password|min:6'
]);

这在 Laravel 5.2应用程序中工作得很好,但在5.4应用程序中不起作用。

image

这里出了什么问题,或者如果设置了 passwordpassword_confirmation字段,那么只需要 password的正确方法是什么?

271439 次浏览

您可以使用 确认验证规则。

$this->validate($request, [
'name' => 'required|min:3|max:50',
'email' => 'email',
'vat_number' => 'max:13',
'password' => 'required|confirmed|min:6',
]);

试试这个:

'password' => 'required|min:6|confirmed',
'password_confirmation' => 'required|min:6'

尝试确认且不使用密码 _ 确认规则:

$this->validate($request, [
'name' => 'required|min:3|max:50',
'email' => 'email',
'vat_number' => 'max:13',
'password' => 'confirmed|min:6',
]);

试试这样做,它为我工作:

$this->validate($request, [
'name' => 'required|min:3|max:50',
'email' => 'email',
'vat_number' => 'max:13',
'password' => 'min:6|required_with:password_confirmation|same:password_confirmation',
'password_confirmation' => 'min:6'
]);`

似乎规则总是对第一个输入进行验证..。

这应该足够了:

$this->validate($request, [
'password' => 'sometimes,min:6,confirmed,required_with:password_confirmed',
]);

使 password 成为可选项,但是如果存在需要与 password _ 確认匹配的密码,那么只有在 password _ 確认存在的情况下才使 password 成为必需的密码

我已经用这种方式. . 工作的罚款!

 $inputs = request()->validate([
'name' => 'required | min:6 | max: 20',
'email' => 'required',
'password' => 'required| min:4| max:7 |confirmed',
'password_confirmation' => 'required| min:4'
]);

我已经用这种方式。它的工作正常!

$rules = [


'password' => [


'required',


'string',


'min:6',


'max:12',             // must be at least 8 characters in length


],


'confirm_password' => 'required|same:password|min:6'


];

在 Laravel 9很容易

对于 Laravel 9.x,以下是链接: https://laravel.com/docs/9.x/validation#rule-confirmed下面的代码对我很有用:

public function store(){
$signUp = request()->validate([
'student_email' => 'required|email|max:255',
*'password' => 'required|confirmed|min:7|max:255',*
]);

备注:

在 form.Blade 中,确保 password 输入字段的 name 属性为 name="password"-> 肯定是密码,

  • 另外,在 确认密码文本输入框中添加一个 name="password_confirmation"属性,它就可以工作了。

  • 类的窗体请求验证方法中的代码减少 商店。

  • 而且不需要添加 Password_confirmation名称属性 到控制器中的验证请求方法。

干杯。