1.Built забыл пароль форму:
метод
<h2>Reset Email</h2>
<form method="POST" role="form" action="{{url('auth/token')}}">
{!! csrf_field() !!}
<input class="form-control" type="email" name="email" placeholder="Email Address" /><br>
<button type="submit" class="btn btn-default">Send Reset link</button>
</form>
2.token() в контроллере: Обновите remember_token
пользователя с электронной почтой при условии. Отправьте ссылку по электронной почте пользователю с этим токеном и именем пользователя в качестве параметров. Здесь я просто возвращение по ссылке метод
public function token(Request $request)
{
$token = str_shuffle('abcdefgh1234567890xsYsdsew');
$getEmail=$request->get('email');
$getModel=User::where(['email'=>$getEmail])->first();
if($getModel)
{
$getModel->remember_token=$token;
$getModel->update();
return '/auth/reset/'.$getModel->username.'/'.$token;
}
else
{
return redirect('/login')->with('message','Email doesnot exist!');
}
}
3.reset(): Если маркер и имя пользователя в базе данных соответствует маркер и адрес электронной почты в ссылку электронной почты, перенаправлять пользователя, чтобы изменить вид формы.
public function reset($username, $token)
{
$getModel=User::where(['username'=>$username])->first();
if($getModel->remember_token==$token)
{
return View('auth.change', ['id' =>$getModel->id]);
}
else
{
return redirect('/auth/forgot');
}
}
Сброс пароля Форма: метод
<h2>Reset Password</h2>
<form method="POST" id="reset" role="form" action="{{url('/auth/change')}}">
{!! csrf_field() !!}
<input class="form-control" type="password" id="password" name="password" placeholder="New Password" /><br>
<input class="form-control" type="password" name="cpassword" placeholder="Confirm Password" /><br>
<input type="hidden" name="id" value="<?php echo $id;?>">
<button type="submit" class="btn btn-default">Change password</button>
</form>
изменение():
public function change(Request $request)
{
$getid=$request->get('id');
$getModel=User::where(['id'=>$getid])->first();
$password=Hash::make($request->get('password'));
$getModel->password=$password;
$getModel->update();
return redirect('/auth/login')
->with('message','Password changed!');
}
Но я предпочитаю встроенные функции.
Для того, чтобы быть ясным ..... вы хотите, чтобы те же функции, что и laravel, вы выходите из коробки, но пишите сами и просите о шагах? Если anwser да ... копировать и вставлять код laravel в свои собственные файлы, и это то, что .... хорошая работа :) – Bostjan
Его как изобретать колесо. Кроме того, вы находите в нем что-то неуместное. Может быть, это не подходит для вашей реализации. Рад, если бы вы могли поделиться. – Gayan