Jump to content

[PHP] Include si url = xxxxxx sinon include ...

Featured Replies

Posted

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";
 }  

  • Author

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

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.

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 :-)

  • Author

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.

Tu ajoutes un "default" à la fin de ton switch :

switch ($page)
{
 case "blahblah" :
blahblah.php;
break;
 default:
erreur404.php;
break;
}

  • Author

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.

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 :|

  • Author

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 :)

Archived

This topic is now archived and is closed to further replies.