PHP/Lien css

PHP/Lien css - HTML/CSS - Programmation

Marsh Posté le 22-07-2007 à 23:12:43    

Bonjour,
 
J'aurais souhaité savoir s'il existait une méthode simple pour qu'une fois cliqué sur un lien dans un menu il conserve le meme background que celui qu'il a quand il est hover. Lorsque l'on clique sur un autre lien du menu, le background "hover" du lien précédent s'enlève et se met sur le lien que l'on a cliqué. Le but étant d'avoir le lien de la section du site dans laquelle on se trouve différent des autres liens du menu. J'ai tenté avec du php, en envoyant une variable GET ayant un contenu différent pour chaque lien, ensuite en la récupérant j'attribue une classe différente au lien concerné mais ça doit ramer un peu d'où ma question ;)
 
Voilà, en espérant que c'est compréhensible, merci :)


Message édité par Nolhian le 23-07-2007 à 17:23:51
Reply

Marsh Posté le 22-07-2007 à 23:12:43   

Reply

Marsh Posté le 23-07-2007 à 10:49:09    

La solution PHP est la seule possible :jap: Et encore mieux, tu remplace le lien par un <strong> : Il est très courtois de ne pas avoir de lien qui pointe sur la page en cours.

Reply

Marsh Posté le 23-07-2007 à 17:23:33    

Bonjour, merci de cette réponse, effectivement je n'avais pas pensé à enlever le lien de la page en cours  :jap:  
 
Au niveau du php lorsque je récupère la variable du lien, j'ai un doute au niveau de la rapidité d'execution :
 
 

Code :
  1. $Accueil='<li><a href="index.php?Page=Accueil">Accueil</a></li>';
  2. $Forum='<li><a href="index.php?Page=Forum">Forum</a></li>';
  3. $Blog='<li><a href="index.php?Page=Blog">Blog</a></li>';
  4. $Lien4='<li><a href="index.php?Page=Lien4">Lien4</a></li>';
  5. $Lien5='<li><a href="index.php?Page=Lien5">Lien 5</a></li>';
  6. $Lien6='<li><a href="index.php?Page=Lien6">Lien 6</a></li>';
  7. switch ($Page)
  8. {
  9. case "Accueil" : $Accueil='<li class="menu">Accueil</li>';
  10. break;
  11. case "Blog" : $Blog='<li class="menu">Blog</li>';
  12. break;
  13. case "Forum" : $Forum='<li class="menu">Forum</li>';
  14. break;
  15. case "Lien4" : $Lien4='<li class="menu">Lien4</li>';
  16. break;
  17. case "Lien5" : $Lien5='<li class="menu">Lien 5</li>';
  18. break;
  19. case "Lien6" : $Lien6='<li class="menu">Lien 6</li>';
  20. break;
  21. }
  22. echo $Accueil;
  23. echo $Blog;
  24. echo $Forum;
  25. echo $Lien4;
  26. echo $Lien5;
  27. echo $Lien6;


 
Ou bien :
 

Code :
  1. if ($Page=="Accueil" ) echo '<li class="menu">Accueil</li>';
  2. Else echo '<li><a href="index.php?Page=Accueil">Accueil</a></li>';
  3. if ($Page=="Blog" ) echo '<li class="menu">Blog</li>';
  4. Else  echo '<li><a href="index.php?Page=Blog">Blog</a></li>';
  5. if ($Page=="Forum" ) echo '<li class="menu">Forum</li>';
  6. Else  echo '<li><a href="index.php?Page=Forum">Forum</a></li>';
  7. if ($Page=="Lien4" ) echo '<li class="menu">Lien4</li>';
  8. Else  echo '<li><a href="index.php?Page=Lien4">Lien4</a></li>';
  9. if ($Page=="Lien5" ) echo '<li class="menu">Lien 5</li>';
  10. Else  echo '<li><a href="index.php?Page=Lien5">Lien 5</a></li>';
  11. if ($Page=="Lien6" ) echo '<li class="menu">Lien 6</li>';
  12. Else  echo '<li><a href="index.php?Page=Lien6">Lien 6</a></li>';


 
Merci ;)
 
Edit : Je viens de m'apercevoir que cette question est sur le mauvais forum


Message édité par Nolhian le 23-07-2007 à 17:25:46
Reply

Marsh Posté le 23-07-2007 à 17:25:41    

Si tu t'inquiètes de la rapidité de ça, qu'est-ce que ce sera lorsque tu passeras à une base de données ? :D
 
T'inquiète pas, ton code est assez rapide. Tu peux optimiser niveau lisbilité ou maintenance (en utilisant un tableau par exemple pour les liens), mais c'est pas ça qui fera tout ramer :)

Reply

Marsh Posté le 23-07-2007 à 17:28:02    

Ok merci beaucoup de l'aide ;)

Reply

Sujets relatifs:

Leave a Replay

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