A voir également:
- [PHP] PROBLEME AVEC LES VARIABLES
- Easy php - Télécharger - Divers Web & Internet
- Bouton php - Forum PHP
- Php?id=1 - Forum PHP
- \R php ✓ - Forum PHP
- Php if plusieurs conditions ✓ - Forum PHP
3 réponses
Yuh12
Messages postés
184
Date d'inscription
mercredi 7 mai 2014
Statut
Membre
Dernière intervention
28 septembre 2017
24
23 juil. 2015 à 21:26
23 juil. 2015 à 21:26
N'oublie pas de mettre les balises prévues par le forum pour la compréhension du code.
Si tu tiens a ton switch case il faudra enlever la majuscule au "Switch" !
<?php if(isset($_GET['page']) && $_GET['page']=='connexion')) { $msg="Bonjour !"; if(isset($_GET['err']) && $_GET['err']=='iden' ) $msg="Erreur"; echo $msg; }?>
Si tu tiens a ton switch case il faudra enlever la majuscule au "Switch" !
jordane45
Messages postés
38299
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 novembre 2024
4 704
Modifié par jordane45 le 23/07/2015 à 22:49
Modifié par jordane45 le 23/07/2015 à 22:49
Bonjour,
Tout d'abord... il est préférable de récupérer les variables PROPREMENT avant de les utiliser... via ISSET ou EMPTY et l'écriture ternaire
Par la suite.. cela simplifie l'écriture du code :
Ensuite... pour ce qui est de ta question... c'est très confus;...
Tu veux quoi ?
- savoir comment rediriger vers une page ? (header location sera là pour ça)
- Comment Inclure une page ? dans ce cas... include ou require .....
- Comment transmettre ta variable $msg à d'autres page ? ... là tu pourrais utiliser les variables de session par exemple..
Bref... c'est quoi la question exactement ??
Cordialement,
Jordane
Tout d'abord... il est préférable de récupérer les variables PROPREMENT avant de les utiliser... via ISSET ou EMPTY et l'écriture ternaire
Par la suite.. cela simplifie l'écriture du code :
$page = !empty($_GET['page']) ? $_GET['page'] : NULL; $err = !empty($_GET['err']) ? $_GET['err'] : NULL; if($page){ switch($page){ case "connexion": $formulaire=true; if($err ==='iden'){ $msg='identifiant mauvai'; } else { $msg='Bienvenue sur notre page de connexion'; } //code qui affiche la page de connexion au site et qui traite aussitôt les informations recu de l'utilisateur. break; default: //code qui affiche la page index du site header("location:index.php"); break; } }
Ensuite... pour ce qui est de ta question... c'est très confus;...
Tu veux quoi ?
- savoir comment rediriger vers une page ? (header location sera là pour ça)
- Comment Inclure une page ? dans ce cas... include ou require .....
- Comment transmettre ta variable $msg à d'autres page ? ... là tu pourrais utiliser les variables de session par exemple..
Bref... c'est quoi la question exactement ??
Cordialement,
Jordane
jordane45
Messages postés
38299
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 novembre 2024
4 704
>
Profil bloqué
23 juil. 2015 à 22:48
23 juil. 2015 à 22:48
Et cette erreur.... elle apparait à cause de quoi ??
Sûrement pas le code que tu nous as montré....
Vu qu'il semble s'agir d'un Problème d'indentifiants.... cela résulte donc d'un formulaire de connexion... et du code php qui va avec.
Il aurait été bien de nous le montrer !
Quoi qu'il en soit.. je pense t'avoir donné la solution... HEADER LOCATION.
https://forums.commentcamarche.net/forum/affich-37622003-redirection-php-redirect-header
Sûrement pas le code que tu nous as montré....
Vu qu'il semble s'agir d'un Problème d'indentifiants.... cela résulte donc d'un formulaire de connexion... et du code php qui va avec.
Il aurait été bien de nous le montrer !
Quoi qu'il en soit.. je pense t'avoir donné la solution... HEADER LOCATION.
header("location:tapage.php?page=titi&err=toto");
https://forums.commentcamarche.net/forum/affich-37622003-redirection-php-redirect-header
jordane45
Messages postés
38299
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 novembre 2024
4 704
24 juil. 2015 à 00:24
24 juil. 2015 à 00:24
pour faire apparaître des variables dans l'ur [...] la solution est juste une redirection? .
Oui.
Mais, et cela rejoint ton autre discussion..., il existe d'autres méthodes.
Et dans le cas que tu nous présentes ici.... l'utilisation des variables de SESSION me semble la plus appropriée. (tu pourrais, par exemple, directement passer ta variable $msg )
Par exemple :
<?php //page1.php // Démarrage "propre" des Sessions if(session_id()==""){ session_start(); } //récupération des variables $login = !empty($_POST['login']) ? $_POST['login'] : NULL; $pwd = !empty($_POST['pwd']) ? $_POST['pwd'] : NULL; $msg = array(); //Traitement du formulaire if(isset($_POST)){ if($login && $pwd){ $msg[] = "Vous avez bien saisie les informations login :"$login ." et password :".$pwd; }else{ $msg[] = "Erreur. Merci de renseigner le login et le password"; } //On stocke la variable msg dans une variable session $_SESSION['msg'] = $msg; //redirection vers la page2 header("location:page2.php"); } ?> <html> <head> <title>Formulaire d'identification</title> </head> <body> <!-- action="" signifie que tu recharges la page actuelle --> <form action="" method="post"> Votre login : <input type="text" name="login"> <br /> Votre mot de passe : <input type="password" name="pwd"><br /> <input type="submit" value="Connexion"> </form> </body> </html>
Et dans la page2 :
<?php //page2.php // Démarrage "propre" des Sessions if(session_id()==""){ session_start(); } //On regardes si la variable session msg existe. // si oui... on affiche les messages. $arr_msg = !empty($_SESSION['msg']) ? $_SESSION['msg'] : array(); foreach($arr_msg as $message){ echo "<br>".$message; } ?>
jordane45
Messages postés
38299
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 novembre 2024
4 704
24 juil. 2015 à 00:57
24 juil. 2015 à 00:57
Personnellement je limite énormément l'utilisation des variables GET dans mes DEV.
Le fait que les variables soient visibles dans l'URL a tendance à inciter les internautes à les modifier manuellement...histoire de voir ce que ça fera.... ^^
Comme miramaze te l'a indiqué dans ton autre discussion...(la dessus je suis d'accord avec lui....) ... l'utilisation des variables GET devraient principalement se limiter au passage d'infos telles qu'un ID par exemple.
Pour ce qui est des formulaires... j'utilise essentiellement du POST.
Et pour le reste.. des SESSIONS ou des COOKIES
Le fait que les variables soient visibles dans l'URL a tendance à inciter les internautes à les modifier manuellement...histoire de voir ce que ça fera.... ^^
Comme miramaze te l'a indiqué dans ton autre discussion...(la dessus je suis d'accord avec lui....) ... l'utilisation des variables GET devraient principalement se limiter au passage d'infos telles qu'un ID par exemple.
Pour ce qui est des formulaires... j'utilise essentiellement du POST.
Et pour le reste.. des SESSIONS ou des COOKIES
Yuh12
Messages postés
184
Date d'inscription
mercredi 7 mai 2014
Statut
Membre
Dernière intervention
28 septembre 2017
24
24 juil. 2015 à 01:23
24 juil. 2015 à 01:23
Le GET est quand même très utile pour que les utilisateurs d'un site puissent, en partageant l'URL d'une page à quelqu'un, tomber précisément sur ce qu'ils cherchent (en tout cas cela m'a beaucoup servi pour ce genre de cas).
Après il est possible de coder des restrictions pour que l'utilisateur soit renvoyé sur un 404 quand il essaye de faire "le petit malin" en tapant autres choses que ce qui est prévu ! Mais cela demande un peu de travail de "protection" supplémentaire.
Après il est possible de coder des restrictions pour que l'utilisateur soit renvoyé sur un 404 quand il essaye de faire "le petit malin" en tapant autres choses que ce qui est prévu ! Mais cela demande un peu de travail de "protection" supplémentaire.
jordane45
Messages postés
38299
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 novembre 2024
4 704
>
Yuh12
Messages postés
184
Date d'inscription
mercredi 7 mai 2014
Statut
Membre
Dernière intervention
28 septembre 2017
24 juil. 2015 à 01:34
24 juil. 2015 à 01:34
Le GET est quand même très utile pour que les utilisateurs d'un site puissent, en partageant l'URL d'une page à quelqu'un, tomber précisément sur ce qu'ils cherchent (en tout cas cela m'a beaucoup servi pour ce genre de cas).
Oui.... et les "infos" présentes dans l'url... ne sont rien d'autre que le nom d'une page , éventuellement la variable de langue (si on fait un site multilingue par exemple) et/(ou) des ID (en très grande majorité des cas)...
Pour les autres données... les autres méthodes sont préférées.... (et ainsi on évite de créer des URL de 10 km de long avec 50 variables dedans... ^^ )
Yuh12
Messages postés
184
Date d'inscription
mercredi 7 mai 2014
Statut
Membre
Dernière intervention
28 septembre 2017
24
Modifié par Yuh12 le 24/07/2015 à 04:01
Modifié par Yuh12 le 24/07/2015 à 04:01
Je pense que cela peut-être un peu plus varié, page et id, certes sont les principaux...
Mais on peut aussi mettre le numéro de la page, un système d'onglet, de tri des éléments (date, ordre..), un pseudo (si le site possède une page de même template pour chaque utilisateur), enfin pleins de petites spécificités qui peuvent :
- soit faciliter l'organisation du site de la même manière qu'avec les page=...
- soit lors de partages d'URL, sur les réseaux sociaux par exemple, ajouter de la précision !
Je peux me tromper ! Mais sans parler de 10km on peut s'y retrouver :D
EDIT : Je parle du GET en général, pour le post je suis d'accord que d'autres solutions sont préférables pour la gestion d'erreurs.
Mais on peut aussi mettre le numéro de la page, un système d'onglet, de tri des éléments (date, ordre..), un pseudo (si le site possède une page de même template pour chaque utilisateur), enfin pleins de petites spécificités qui peuvent :
- soit faciliter l'organisation du site de la même manière qu'avec les page=...
- soit lors de partages d'URL, sur les réseaux sociaux par exemple, ajouter de la précision !
Je peux me tromper ! Mais sans parler de 10km on peut s'y retrouver :D
EDIT : Je parle du GET en général, pour le post je suis d'accord que d'autres solutions sont préférables pour la gestion d'erreurs.