6
votes

Redirection de l'utilisateur à l'URL souhaitée à l'origine après la connexion

Exemple:

  1. L'utilisateur n'est pas connecté
  2. Utilisateur a des éléments dans leur panier d'achat
  3. L'utilisateur va à / Checkout
  4. L'utilisateur est redirigé vers la page / Login
  5. L'utilisateur enregistre avec succès et doit être redirigé vers la page / Checkout Page

    Comment l'action de connexion peut-elle savoir rediriger l'utilisateur à la caisse dans ce cas? Je veux que cela fonctionne dans de nombreuses situations différentes non seulement / à la caisse.


2 commentaires

Similaire: Stackoverflow.com/questions / 1249274 / ...


Salut, avez-vous trouvé une bonne solution pour cela?


4 Réponses :


5
votes

Un paramètre de chaîne de requête dans la page de connexion soit suffisant?

par exemple: www.example.com/login.php?returnurl=[Someurl]

Une fois l'authentification réussie, l'utilisateur serait redirigé vers l'URL spécifiée dans la chaîne de requête.

...

Edit: Il s'agit d'une solution générale, ce n'est pas une option que vous utilisez le cadre que vous utilisez. Mais quelque chose à considérer.


4 commentaires

Merci pour la solution, mais je préférerais ne pas faire partie de l'URL en tant que chaîne de requête, juste pour la maintenance et la propreté ...


Si vous ne voulez pas que cela fasse partie de l'URL, vous devez le stocker à la session. La poste serait également possible, mais je ne le recommanderais pas.


Oui, le stocker dans la session / poste serait une approche alternative qui fonctionnerait également.


Il semble que Stackoverflow utilise cette même méthode pour leur identifiant à uPvote / Downvote



0
votes

J'ai posté un bit du code de ma classe "my_form" qui a "référent" suivi intégré au formulaire sur SO1249274 . Les autres solutions postées là-bas peuvent vous aider à résoudre votre problème également.


2 commentaires

Malheureusement, je trouve que http_regerer est toujours vide pour moi?


Je n'ai jamais eu de problème à s'appuyer sur http_regerer, peut-être un problème de configuration du serveur?



0
votes

J'ai fait où nous redirigeons / se connecter avec un paramètre simple du "retour". Connexion voit le paramètre et vérifie le référateur pour voir que c'est l'une de nos pages. Si c'est le cas, il redirige de ce référateur. Fonctionne vraiment bien. Sinon, on peut mettre la "destination" de la redirection après la connexion dans un paramètre différent (il s'agit d'une requête ou d'une session ou de la flashmessage)


0 commentaires

0
votes

J'utilise la variable de session pour conserver l'URL demandée. Lorsqu'il se connecte avec succès, je vérifie si cette variable de session est définie. S'il est défini, je redirection de l'URL demandée.


0 commentaires