Nitro-TecK Posted May 20, 2006 Share Posted May 20, 2006 Bonjour les INpactiens. Alors voila je cherche une soluce afin d'inclure un .html quand on clique sur un lien et si l'url n'est pas bonne afficher une page par default ( news.php ou alors un 404 ) Donc les liens sur mon site sont du style : http://**************/index2.php?page=LFS Je recupere donc la variable avec $_get['page'] = variable X Ensuite je veux comparer cette variable avec ce qui est possible ( exemple ici, si page = LFS alors on afficher LFS.php ) mais si celà de correspond pas, alors inclure par default la page "news.php" Mais la je bute, je sais pas faire, je pense des if ... mais j'arrive pas vraiment à le faire correctement. Alors si des INpactiens qui savent comment faire pouvaient m'éclairer sa serait super ! Merci par avance. Edit : voila le code qui ne marche pas chez moi ( doit y avoir aussis des soucis niveau syntaxe, je debute. ) $get_['page']=$pages; if ($pages == "LFS") { include "pages/LFS.html"; } elseif ($pages == "drift") { include "pages/drift.html"; } elseif($pages == "musique") { include "pages/musique.html"; } elseif ($pages == "djing") { include "pages/djing.html"; } else { include "news/index.php"; } Link to comment Share on other sites More sharing options...
wicked Posted May 21, 2006 Share Posted May 21, 2006 Première ligne il y a une erreur... C'est le contraire : $pages = $_GET["page"]; Link to comment Share on other sites More sharing options...
Nitro-TecK Posted May 21, 2006 Author Share Posted May 21, 2006 Ouai j'avais déjà essayer comme sa aussi et j'ai oublier de le remettre. Mais voila, petit soucis vu que lorsque je charge la page j'ai juste index2 Donc la variable $pages prend quelque chose d'incorect donc j'ai cela comme erreur : Notice: Undefined index: page in c:\program files\easyphp1-8\www\siteperso\index2.php on line 91 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in c:\program files\easyphp1-8\www\siteperso\news\index.php on line 53 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in c:\program files\easyphp1-8\www\siteperso\news\index.php on line 53 Parse error: parse error, expecting `','' or `';'' in c:\program files\easyphp1-8\www\siteperso\news\index.php on line 53 Link to comment Share on other sites More sharing options...
wicked Posted May 21, 2006 Share Posted May 21, 2006 Non çà n'a rien à voir... tu as une erreur de syntaxe quelque part dans ton code, soit ligne 53 comme indiqué dans l'erreur, soit avant. Comme tu ne donnes pas le code complet je ne peux pas te dire ou est l'erreur. Link to comment Share on other sites More sharing options...
Ago Posted May 21, 2006 Share Posted May 21, 2006 il doit te manquer un ; en bout de ligne quelque part. Sinon pour ce genre d'application il est plus conseillé d'utilise switch, c'est plus souple ;-) Lis aussi la suite de ce topic, elle est intéressante et les liens dedans aussi :-) Link to comment Share on other sites More sharing options...
Nitro-TecK Posted May 21, 2006 Author Share Posted May 21, 2006 Je vais essayer d'utiliser la focntion que tu as donner en lien agonistic et si sa marche toujours pas je vous posterai le code . EDIT : Niquel sa marche ! Par contre voila maintenant je souhaiterai afficher une page d'érreur si la page demander n'existe pas à la place de : "....failed to open stream: No such file or directory...." Merci par avance. Link to comment Share on other sites More sharing options...
wicked Posted May 21, 2006 Share Posted May 21, 2006 Tu ajoutes un "default" à la fin de ton switch : switch ($page) { case "blahblah" : blahblah.php; break; default: erreur404.php; break; } Link to comment Share on other sites More sharing options...
Nitro-TecK Posted May 21, 2006 Author Share Posted May 21, 2006 Euh tu peux me dire comment je met sa dans ce code ? <?php if (!isset($_GET["page"])) { include ("news/index.php"); } else { $page=$_GET["page"]; include("pages/$page.php"); } ?> Désolé mais très très nul en PHP. Link to comment Share on other sites More sharing options...
wicked Posted May 21, 2006 Share Posted May 21, 2006 Euh tu peux me dire comment je met sa dans ce code ? <?php if (!isset($_GET["page"])) { include ("news/index.php"); } else { $page=$_GET["page"]; include("pages/$page.php"); } ?> Désolé mais très très nul en PHP. Au temps pour moi... je croyais que tu étais passé à une solution avec un switch. Le code ci-dessus ne veut absolument rien dire et si avec toutes l'aide qu'on t'a donné aujourd'hui tu n'y arrives toujours pas... moi j'abandonne Link to comment Share on other sites More sharing options...
Nitro-TecK Posted May 21, 2006 Author Share Posted May 21, 2006 Oki c'est bon j'ai trouver pour le switch, et effectivement c'est vraiment tres pratique ! http://www.siteduzero.com/tuto-3-100-1-les....html#ss_part_2 ( pour ceux que sa pourrai interesser ) ET puis wicked, je m'etais tourné vers le lien que m'as donner Agonistic. Je vais allez coder sa et j'éditerai si tout marche correctement :) EDIT : Nikel merci encore ! Link to comment Share on other sites More sharing options...
Ago Posted May 22, 2006 Share Posted May 22, 2006 N'oublie pas de sécuriser ton code surtout ! C'est assez important quand meme :-) Sinon d'autres liens abordant le sujet, au cas ou quelqu'un tomberait sur ce topic par une recherche : http://www.phpdebutant.org/article68.php http://www.asp-php.net/tutorial/asp-php/pseudo-frame.php :-) Link to comment Share on other sites More sharing options...
Nitro-TecK Posted May 22, 2006 Author Share Posted May 22, 2006 Et bien normalement vu que j'utilise un switch, si la page rentré dans l'URL n'est pas valide il va afficher les news. J'ai essayer et sa à l'air de fonctionner donc sa devrai allez :) En tout car merci d'avoir prevenue :) Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.