[ PHP ] Une petite aide pour la fonction switch svp...

Une petite aide pour la fonction switch svp... [ PHP ] - Programmation

Marsh Posté le 24-11-2001 à 15:22:40    

ben voilà
 
ca marche pas !! :( quand je tape ca: index.php?cat=storiesdb&page=2 il m'affiche la page 1 !!
 
voici le code :D  
 
 
<?
switch ($cat){
 case "news": $page_principale= "index.php"; break;
 case "archives": $page_principale= "archives.php"; break;
 case "storiesdb":  
  switch($page){
    case "1": $page_principale= "stories/dragonball.php";
    case "2": $page_principale= "stories/dragonball_2.php";
    default: $page_principale= "stories/dragonball.php";
  }
  break;
 default: $page_principale= "news.php"; break;
}
include($page_principale);
?>
 
pourquoi ca marche pas ???

Reply

Marsh Posté le 24-11-2001 à 15:22:40   

Reply

Marsh Posté le 24-11-2001 à 15:53:25    

:bounce:  :cry:

Reply

Marsh Posté le 24-11-2001 à 16:00:18    

c'est pas normal :D
 
genre il manquerait pas un break après le case "2" ? il va alors passer par default ...

Reply

Marsh Posté le 24-11-2001 à 16:03:52    

je vais voir :)

Reply

Marsh Posté le 24-11-2001 à 16:05:34    

YEAH !!!!!!!!!! CA MARCHE !!! :pt1cable:  :pt1cable:  
 
je dois rajouter break; a chaque fin de ligne ? :??:

Reply

Marsh Posté le 24-11-2001 à 16:19:57    

tu dois rajouter 'break' quand tu veux faire un break :D dans un switch, le case indique juste l'endoit où commencer à éxécuter le code. break sort du switch.  
 
tu peux aussi lire la doc :D

Reply

Marsh Posté le 24-11-2001 à 21:23:31    

ouais heu bon enfin....ca marche :D c'est l'essentiel :)  
 
en plus c'est toi je crois qui m'avais passé ce code je crois ;)  
 
merci

Reply

Marsh Posté le 24-11-2001 à 22:30:30    

:)

Negueu a écrit a écrit :

en plus c'est toi je crois qui m'avais passé ce code je crois ;)


non. je ne suis pas fan du tout des switch en général, et en php on peut faire beaucoup mieux et beaucoup plus élégant, par ex nommer tes pages php du même nom que tes catégories, rajouter '.php' à la variable qui contient la catégorie, tester si la page existe, puis faire l'include.
 
dans ton cas, ça ne marche pas -> faire un tableau associatif qui contient comme clé le nom de la catégorie et comme valeur l'url de la page. le changement de page (dragonball_2.php) devrait être traîté directement dans le .php correspondant, ou faire un système un système plus générique partagé par tous les .php. ou tout mettre dans une db.
 
etc ... les switch c'est du scotch.

Reply

Marsh Posté le 25-11-2001 à 01:30:47    

moi je prefere la methode bdd (c ce que j'utilise)
 
 
je stocke la catégorie et l'url, je teste si la catégorie existe, si oui inclure la page avec l'url en fonction.

Reply

Marsh Posté le 25-11-2001 à 02:36:01    

ouaip ça vient de chez moi Negueu ;)
mais je t'avais aussi conseillé les tableaux, ou la bd.
 
teste, puis progresse ;)

Reply

Marsh Posté le 25-11-2001 à 02:36:01   

Reply

Marsh Posté le 25-11-2001 à 10:54:04    

ethernal a écrit a écrit :

ouaip ça vient de chez moi Negueu ;)
mais je t'avais aussi conseillé les tableaux, ou la bd.
 
teste, puis progresse ;)  




 
ah ok ben merci !! ca marche :) j'espere que c pas trop gourmand en ressource serveur ce truc là :D  
 
 :hello:

Reply

Marsh Posté le 25-11-2001 à 13:03:48    

c'est plus grourmand que des tableaux je pense, mais ça doit être infime... à moins d'en faire 3000 imbriqué, ça devrait pas poser problème ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed