Formation PUB030 : Laravel, 2019 L'authentification

37.6 Retenir l'URL de la page qui a demandé l'affichage du formulaire d'authentification


Lorsque le formulaire d'authentification est affiché sur une vue qui lui est propre, il est d'usage, une fois l'usager authentifié, de retourner le contrôle à la page qui était affichée avant l'authentification.

Le problème, c'est qu'on ne peut pas retrouver cette page simplement avec back() puisque la page qui était affichée avant la requête POST qui vérifie l'authentification est... la page d'authentification. Il faudrait reculer de deux niveaux pour retrouver la bonne page.

Une astuce pour retenir la page qui était affichée avant le formulaire d'authentification consiste à créer une variable de session dès que le bouton de connexion est cliqué. La variable de session sera donc créée dans la méthode d'action, juste avant l'affichage de la vue.

Ex :

Contrôleur Laravel (PHP)

/**

* Affiche le formulaire d'authentification.

*

* @return \Illuminate\View\View

*/

public function showLoginForm()

{

    Session::put('retourApresAuthentification', back()->getTargetUrl());

    return View('auth.login');

}

▼Publicité

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !
Soumettre