【问题标题】:Laravel Validation Same not Working as intendedLaravel 验证同样不能按预期工作
【发布时间】:2016-02-25 03:09:41
【问题描述】:

我正在Laravel 中编写一个请求验证器,其中我有以下条件。要检查给定的密码是否相同,这将失败,并显示密码不相同的消息,即使密码相同。

'password1' => 'string',
'password2' => 'string|same: password1'

如果我禁用验证和dd(Input::only('password1','password2'));,它将打印出以下内容。

array:2 [
    "password1" => "123"
    "password2" => "123"
]

为什么same 验证不起作用?

【问题讨论】:

  • same:password1 之间的空格?

标签: php laravel laravel-5 laravel-validation


【解决方案1】:

您的问题是验证规则中的空格。您的输入中没有名为 [space]password1 的字段,因此验证失败。应该是same:password1,而不是same: password1

'password1' => 'string',
'password2' => 'string|same:password1'

通常完成密码确认的另一种方法是使用confirmed 验证。通常,您有一个password 字段和一个password_confirmation 字段,然后confirmed 验证将验证您的password 输入是否具有来自*_confirmation 字段的匹配输入。

'password' => 'string|confirmed',
'password_confirmation' => 'string',

【讨论】:

    猜你喜欢
    • 2018-03-31
    • 2015-05-25
    • 1970-01-01
    • 2019-11-27
    • 2020-01-05
    • 2017-06-02
    • 2015-06-09
    • 2013-01-21
    • 1970-01-01
    相关资源
    最近更新 更多