[PHP] Transmettre une URL avec plusieurs GET
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai créé un espace membres pour mon site, et je souhaite que lorsque l'on se connecte ou se déconnecte, les utilisateurs soient redirigés vers la page d'où ils proviennent (exemple : une personne est sur le forum, il se déconnecte et la page de déconnexion le redirige vers le forum).
J'ai donc mis sur chaque page un lien vers la page de déconnexion comme ceci :
Et sur la page de déconnexion la redirection :
Le problème est que quand l'adresse de la page d'origine contient plusieurs GET, l'adresse de la page après redirection n'en contient plus qu'un seul, le premier.
Je souhaiterais donc savoir comment faire pour envoyer l'URL à la page de déconnexion avec tous les GET inclus, pour que la redirection puisse se faire correctement.
Merci d'avance =)
Dri60
J'ai créé un espace membres pour mon site, et je souhaite que lorsque l'on se connecte ou se déconnecte, les utilisateurs soient redirigés vers la page d'où ils proviennent (exemple : une personne est sur le forum, il se déconnecte et la page de déconnexion le redirige vers le forum).
J'ai donc mis sur chaque page un lien vers la page de déconnexion comme ceci :
$adresse_r = basename($_SERVER["REQUEST_URI"]); echo '<a href="mb_deconnexion.php?adr='.$adresse_r.'">Déconnexion</a>';
Et sur la page de déconnexion la redirection :
if(isset($_GET["adr"])) { echo '<script type="text/javascript">document.location.replace("'.$_GET["adr"].'");</script>'; }
Le problème est que quand l'adresse de la page d'origine contient plusieurs GET, l'adresse de la page après redirection n'en contient plus qu'un seul, le premier.
Je souhaiterais donc savoir comment faire pour envoyer l'URL à la page de déconnexion avec tous les GET inclus, pour que la redirection puisse se faire correctement.
Merci d'avance =)
Dri60
A voir également:
- [PHP] Transmettre une URL avec plusieurs GET
- Url - Guide
- Get data back - Télécharger - Récupération de données
- Easy php - Télécharger - Divers Web & Internet
- "Wmic path softwarelicensingservice get oa3xoriginalproductkey" - Forum Windows
- Comment changer url iptv - Forum Créer un site
3 réponses
Salut.
Pour savoir d'où provient un visiteur en PHP, tu peux utiliser la varibale $_SERVER['HTTP_REFERER'].
Pour la page de redirection, il suffit de rediriger l'utilisateur vers la page d'où il provient :
Pour la page de connexion, quand l'utilisateur arrive dessus et qu'il n'a pas encore saisis ces identifiants, tu peux stocker dans une variable de session l'URL de provenance. Lorsqu'il ce connecte, si c'est OK, il suffit de le rediriger grâce à la variable de session contenant la provenance.
Pour savoir d'où provient un visiteur en PHP, tu peux utiliser la varibale $_SERVER['HTTP_REFERER'].
Pour la page de redirection, il suffit de rediriger l'utilisateur vers la page d'où il provient :
<?php session_start(); unset($_SESSION['id'], $_SESSION['login']); $redirect = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'index.php'; header('Location: '.$redirect); ?>
Pour la page de connexion, quand l'utilisateur arrive dessus et qu'il n'a pas encore saisis ces identifiants, tu peux stocker dans une variable de session l'URL de provenance. Lorsqu'il ce connecte, si c'est OK, il suffit de le rediriger grâce à la variable de session contenant la provenance.
<?php if(isset($_POST['login']) && isset($_POST['password'])) { // Si l'utilisateur est bien connecté $redirect = $_SESSION['loginRedirect']; unset($_SESSION['loginRedirect']); header('Location: '.$redirect); } else { if(!isset($_SESSION['loginRedirect'])) { $_SESSION['loginRedirect'] = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'index.php'; } afficherFormulaire(); } ?>