Problèmes de redirection header("Location: ###.php");
Résolu/Fermé
Geopra
Messages postés
187
Date d'inscription
mercredi 16 septembre 2015
Statut
Membre
Dernière intervention
7 juin 2017
-
29 oct. 2016 à 14:34
Geopra Messages postés 187 Date d'inscription mercredi 16 septembre 2015 Statut Membre Dernière intervention 7 juin 2017 - 31 oct. 2016 à 16:07
Geopra Messages postés 187 Date d'inscription mercredi 16 septembre 2015 Statut Membre Dernière intervention 7 juin 2017 - 31 oct. 2016 à 16:07
A voir également:
- Header( location index.php )
- Problème location film youtube ✓ - Forum YouTube
- Location film youtube ✓ - Forum YouTube
- Request header or cookie too large ✓ - Forum Réseaux sociaux
- Forum résiliation location mobile free - Forum Mobile
- Appdata location - Guide
2 réponses
Konseil
Messages postés
643
Date d'inscription
samedi 29 août 2015
Statut
Membre
Dernière intervention
13 novembre 2018
429
29 oct. 2016 à 14:51
29 oct. 2016 à 14:51
Dans ta page de connexion, tu fais
Ca redirige vers indexauth.php tout simplement sans faire transiter ta variable $GET['id']
Et dans indexauth.php ta condition va forcement retourner false
if(isset($_GET['id']) AND $_GET['id'] > 0 AND isset($_SESSION['id']) AND $_SESSION['id'] > 0)
puisque la variable $_GET['id'] n'est pas transmise précédemment.
header("Location: ..\indexauth.php");
Ca redirige vers indexauth.php tout simplement sans faire transiter ta variable $GET['id']
Et dans indexauth.php ta condition va forcement retourner false
if(isset($_GET['id']) AND $_GET['id'] > 0 AND isset($_SESSION['id']) AND $_SESSION['id'] > 0)
puisque la variable $_GET['id'] n'est pas transmise précédemment.
Geopra
Messages postés
187
Date d'inscription
mercredi 16 septembre 2015
Statut
Membre
Dernière intervention
7 juin 2017
3
Modifié par Geopra le 30/10/2016 à 17:40
Modifié par Geopra le 30/10/2016 à 17:40
Bon, j'ai tout repris depuis le début, avec HTML simplifié et le PHP simplifié aussi, mon problème maintenant, c'est de savoir si un utilisateur est bien authentifié ou pas
Ci-dessous les codes :
Inscription : https://textup.fr/179908T4
Connexion : https://textup.fr/179910SB
Index.php : https://textup.fr/179911vT
Profil : https://textup.fr/179912d0
Editionprofil : https://textup.fr/179913X1
Donc en gros l'objectif, c'est que si l'user est connecté, il est sur une page d'accueil "index.php?id=####", si l'utilisateur n'est pas connecté, alors il est redirigé vers "index.php".
Même chose pour toutes les autres pages visitées, l'url doit se terminer par l'ID de l'user si il est connecté, sinon, redirection automatique vers index.php ou connexion.php en fonction de l'url entré.
Exemple : Si je ne suis pas connecté et que j'entre dans la barre d'adresse "editionprofil.php?id=25" je dois être redirigé vers "connexion.php".
Si je veux accéder à "index.php?id=25", je suis redirigé vers index.php où un lien pour se connecter sera disponible.
J'ai fais plusieurs tests, la connexion fonctionne, mais la redirection elle non, et je n'ai aucune idée du code que je dois mettre pour y arriver.
PS : Le soucis détecté pour l'intant, est que que je sois connecté ou non, sur la page index.php, lorsque je cliques sur "connexion", je suis redirigé sur la même page index.php... et je ne vois pas d'où provient cette erreur.
Merci d'avance
Ci-dessous les codes :
Inscription : https://textup.fr/179908T4
Connexion : https://textup.fr/179910SB
Index.php : https://textup.fr/179911vT
Profil : https://textup.fr/179912d0
Editionprofil : https://textup.fr/179913X1
Donc en gros l'objectif, c'est que si l'user est connecté, il est sur une page d'accueil "index.php?id=####", si l'utilisateur n'est pas connecté, alors il est redirigé vers "index.php".
Même chose pour toutes les autres pages visitées, l'url doit se terminer par l'ID de l'user si il est connecté, sinon, redirection automatique vers index.php ou connexion.php en fonction de l'url entré.
Exemple : Si je ne suis pas connecté et que j'entre dans la barre d'adresse "editionprofil.php?id=25" je dois être redirigé vers "connexion.php".
Si je veux accéder à "index.php?id=25", je suis redirigé vers index.php où un lien pour se connecter sera disponible.
J'ai fais plusieurs tests, la connexion fonctionne, mais la redirection elle non, et je n'ai aucune idée du code que je dois mettre pour y arriver.
PS : Le soucis détecté pour l'intant, est que que je sois connecté ou non, sur la page index.php, lorsque je cliques sur "connexion", je suis redirigé sur la même page index.php... et je ne vois pas d'où provient cette erreur.
Merci d'avance
Konseil
Messages postés
643
Date d'inscription
samedi 29 août 2015
Statut
Membre
Dernière intervention
13 novembre 2018
429
30 oct. 2016 à 21:46
30 oct. 2016 à 21:46
Ce qui différencie un utilisateur connecté et un simple visiteur, c'est la variable session.
donc en haut des pages dont tu souhaites limiter l'accès aux personnes connectés, tu mets:
Par contre je vois pas pourquoi tu veux faire transiter le variable id dans l'url puisqu'elle transite déjà de page en page avec la variable session id.
donc en haut des pages dont tu souhaites limiter l'accès aux personnes connectés, tu mets:
if(!isset($_SESSION['id'])){header("location:index.php");}
Par contre je vois pas pourquoi tu veux faire transiter le variable id dans l'url puisqu'elle transite déjà de page en page avec la variable session id.
Geopra
Messages postés
187
Date d'inscription
mercredi 16 septembre 2015
Statut
Membre
Dernière intervention
7 juin 2017
3
31 oct. 2016 à 16:07
31 oct. 2016 à 16:07
Super ! Ca fonctionne ! Merci beaucoup pour votre aide ! :)
29 oct. 2016 à 14:55
PS : je debute en php, alors c'est un peu compliqué xD
29 oct. 2016 à 15:05
par
ou tu remplaces
par
Je pense qu'il vaut mieux faire la 2eme solution puisqu'au moment de la connexion, la variable $_GET['id'] te sert à rien.
Elle te servira plus tard pour la page profil.php
29 oct. 2016 à 15:15
29 oct. 2016 à 15:35
pour voir si ta variable est bien récupérée et que sa valeur est bonne et un exit(); pour arrêter l'excecution du script.
Mets aussi des echo juste après tes conditions par exemple:
Et tu avances comme ça tout le long de ton script pour voir ce qui cloche.
Modifié par Geopra le 29/10/2016 à 16:01
En revanche, lorsque je saisis dans la barre d'adresse deconnexion.php, je suis déconnecté, et redirigé vers index.php (normal), et là, quand je clique sur "se connecter" pour allez a la page de connexion, ça fonctionne, j'arrive au formulaire, là, je saisis mes identifiants, et je suis redirigé vers index.php au lieu de indexauth.php, et ainsi de suite.
Donc j'imagine que l'erreur doit se trouver dans la page connexion.php ou la page indexauth.php