gpt4 book ai didi

php - Laravel 4 - Ardent - 密码确认不匹配

转载 作者:行者123 更新时间:2023-12-01 08:29:37 26 4
gpt4 key购买 nike

所以我正在 Laravel 4 中实现 Ardent,我似乎无法弄清楚为什么这个密码确认不匹配。

我的用户 Controller 如下所示:

use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableInterface;
use LaravelBook\Ardent\Ardent;

class User extends Ardent implements UserInterface, RemindableInterface {

public static $rules = array(
'first_name' => 'required|min:2|max:80|alpha',
'last_name' => 'required|min:2|max:80|alpha',
'email' => 'required|between:3,64|email|unique:users',
'postal_code' => 'required|min:5|max:80',
'password' => 'required|between:4,20|confirmed',
'password_confirmation' => 'same:password',
'timezone_id' => 'required|numeric',
);

public $autoPurgeRedundantAttributes = true;

然后在模型存储操作中我有以下内容:

$user = new User(Input::all());
if($user->save()) {
// does a bunch of stuff
}

但最后密码确认警告仍然存在,我似乎无法理清原因?如果我从密码字段中取消确认选项,一切正常。我似乎无法让他们明白他们是一样的。我在下面包含了一个示例 var_dump,我已经测试并确认它没有通过验证。

array(10) { 
["_token"]=> string(40) "726lKBQgckGuLBxmJZ7Kjq4kzzXqADDqv3ZSnMOE"
["first_name"]=> string(3) "asd"
["last_name"]=> string(3) "asd"
["email"]=> string(14) "asdasd@asd.com"
["postal_code"]=> string(7) "XXX XXX"
["new_game_notification"]=> string(1) "1"
["timezone_id"]=> string(1) "5"
["password"]=> string(6) "asdasd"
["password_confirmation"]=> string(6) "asdasd"
["role"]=> string(7) "regular"
}

我在保存之前进行了自己的密码哈希处理,但为了解决这个问题,我暂时删除了它。

非常感谢任何建议或指导/方向。

最佳答案

也许密码在保存之前已经过哈希处理...

查看热情的文档:

Route::post('register', function() {
$rules = array(
'name' => 'required|min:3|max:80|alpha_dash',
'email' => 'required|between:3,64|email|unique:users',
'password' => 'required|alpha_num|between:4,8|confirmed',
'password_confirmation' => 'required|alpha_num|between:4,8'
);

$validator = Validator::make(Input::all(), $rules);

if ($validator->passes()) {
User::create(array(
'name' => Input::get('name'),
'email' => Input::get('email'),
'password' => Hash::make(Input::get('password'))
));

return Redirect::to('/')->with('message', 'Thanks for registering!');
} else {
return Redirect::to('/')->withErrors($validator->getMessages());
}
}
);

'password' => 'required|alpha_num|between:4,8|confirmed',

'password_confirmation' => 'required|alpha_num|between:4,8',

关于php - Laravel 4 - Ardent - 密码确认不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22725993/

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