Cum implementezi functia de resetare a parolei intr-o aplicatie Laravel?

Configurare noua (How To)

Situatie

Vom presupune ca dorim sa implementam in aplicatia noastra functia de resetare a parolei.

Solutie

Iată un ghid pas cu pas despre cum să implementați o funcție de resetare a parolei într-o aplicație Laravel:

Generați controlerul de resetare a parolei și vizualizări: În terminalul dvs., executați următoarea comandă:

php artisan make:controller ForgotPasswordController –model=Utilizator

Acest lucru va crea controlerul și vizualizările care se ocupă de procesul de resetare a parolei.

Modificați rutele:Deschideți fișierul routes/web.php și adăugați următorul cod:

Route::get(‘password/reset’, ‘ForgotPasswordController@showLinkRequestForm’)->name(‘password.request’);
Route::post(‘password/email’, ‘ForgotPasswordController@sendResetLinkEmail’)->name(‘password.email’);
Route::get(‘password/reset/{token}’, ‘ResetPasswordController@showResetForm’)->name(‘password.reset’);
Route::post(‘password/reset’, ‘ResetPasswordController@reset’)->name(‘password.update’);

Actualizați ForgotPasswordController: În fișierul ForgotPasswordController.php, trebuie să importați Illuminate\Support\Facades\Password și să adăugați următorul cod în clasa ForgotPasswordController:

use Illuminate\Support\Facades\Password;

public function sendResetLinkEmail(Request $request)
{
$this->validateEmail($request);

$response = $this->broker()->sendResetLink(
$request->only(’email’)
);

return $response == Password::RESET_LINK_SENT
? $this->sendResetLinkResponse($request, $response)
: $this->sendResetLinkFailedResponse($request, $response);
}

protected function validateEmail(Request $request)
{
$request->validate([’email’ => ‘required|email’]);
}

protected function sendResetLinkResponse(Request $request, $response)
{
return back()->with(‘status’, trans($response));
}

protected function sendResetLinkFailedResponse(Request $request, $response)
{
return back()
->withInput($request->only(’email’))
->withErrors([’email’ => trans($response)]);
}

public function broker()
{
return Password::broker();
}

Actualizați vizualizările de resetare a parolei: Vizualizările se află în folderul resurse/vizualizări/auth/parole. Puteți personaliza vizualizările pentru a se potrivi cu designul aplicației dvs.

Testați funcționalitatea de resetare a parolei: Accesați http://your-app.test/password/reset și introduceți adresa dvs. de e-mail. Ar trebui să primiți un e-mail cu un link de resetare a parolei. Urmați linkul pentru a vă reseta parola.

Acesta este un ghid de bază despre cum să implementați o funcție de resetare a parolei într-o aplicație Laravel. Îl puteți personaliza în funcție de cerințele dumneavoastră specifice.

Tip solutie

Permanent

Voteaza

(11 din 17 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?