vero Posté 14 Novembre 2005 Posté 14 Novembre 2005 bonjour, j'utilise le passage d'information dans l'url du type http://xxxx.com/abo2.php3?dr=30&pseudo=kool86 et je voudrai mettre une condition du type si pseudo=est rempli ouverture de la page 1 et si pseudo=rien ouverture de la page b comment dois je faire? Merci
Jan Posté 14 Novembre 2005 Posté 14 Novembre 2005 Bonjour, <?phpif (isset($_GET["pseudo"])) { $redirection = "page_1.php";} else { $redirection = "page_b.php";}header("Location: $redirection");exit();?>
vero Posté 14 Novembre 2005 Auteur Posté 14 Novembre 2005 merci pour la reponse mais ou dois je le mettre sur abo2 j'ai essayé plusieurs endroits mais je n'ai pas trouvé le bon car en haut du code ca detecte pas le pseudo et plus bas ca dit qu'il faut pas de html au dessus du code.... De plus si je le met dans abo2 il suffirait de dire si pas de pseudo dans url allez à abo3 autrement restez sur abo2
Anonymus Posté 14 Novembre 2005 Posté 14 Novembre 2005 C'est difficile à dire, comme ca, sans avoir le site sous les yeux, ni les pages, ni le code source, ni... Enfin.. Tu parles de abo2, abo3, etc.. On peut difficilement savoir de quoi il en retourne, et donc on peut difficilement t'aider, sur ce coup là.
vero Posté 15 Novembre 2005 Auteur Posté 15 Novembre 2005 voila la solution retenue: <? if (isset($_GET["pseudo"]) && strlen($_GET["pseudo"])>0) { // faut rien faire } else { $url="chemin/abo3.php"; header("Location: ".$url); } ?> merci à tous
NorSeb Posté 15 Novembre 2005 Posté 15 Novembre 2005 Bonjour, Le code que tu présente en solution retenue ressemble un peu à la charge d'une porte ouverte (passe moi l'expression) Ici : if (isset($_GET["pseudo"]) && strlen($_GET["pseudo"])>0) Il y a deux conditions à remplir pour passer dans le if ; or ces deux conditions sont similaires. D'autre part, le else est aussi inutile ; Il suffit d'écrire la(es) condition(s) à remplir pour exécuter le code que tu veux. Si elles ne sont pas remplies, le script continue sont exécution "normalement". Soit : if (!isset($_GET["pseudo"])) { $url="chemin/abo3.php"; header("Location: ".$url); } Note le ! dans la ligne du if if (!isset($_GET["pseudo"])) {
Anonymus Posté 16 Novembre 2005 Posté 16 Novembre 2005 Sur un serveur, le 'if' marchera toujours. En fonction de la configuration de la machine, les variables peuvent être toujours initialisées. Il faut alors, dans ce cas, demander si la variable n'est pas vide : if ( ! empty ( $_GET['pseudo'] ) )
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant