Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Dynamiczne menu?
Forum PHP.pl > Forum > Przedszkole
omajgat
Witam, mam takie, proste menu:

<li><a href="#">Kontakt</a></li>
<li><a href="#">O nas</a></li>
<li><a href="#">Pomoc</a></li>
<li><a href="#">Blabla</a></li>
<li <?php echo (basename($_SERVER['REQUEST_URI'])=='/index.php?link=test/index'? 'class="active' : '');?>"><a href="index.php?link=Test/index">Test</a></li>
<li><a href="#">Home</a></li>

Jezeli jest ktos uprzejmy i przerobi mi to aby dzialalo bede wdzieczny, oczywiscie chodzi o podswietlenie przycisku poprzez <li class="active"> na aktywnej stronie.
sadistic_son
Ja bym proponował tak:
Na początku każdej strony deklarujesz sobie zmienną $page np. $page=kontakt; , $page='onas'; itp. itd.
Następnie przy menu robisz tak:
  1. <?
  2. $kontakt='';
  3. $onas='';
  4. $pomoc='';
  5. $blabla='';
  6.  
  7. switch($page){
  8. case 'konatkt':
  9. $kontakt='class=active';
  10. break;
  11. case 'onas':
  12. $onas='class=active';
  13. break;
  14. case 'pomoc':
  15. $kontakt='class=active';
  16. break;
  17. case 'blabla':
  18. $blabla='class=active';
  19. break;
  20. }?>
  21.  
  22. <li><a href="#" <? echo $kontakt; ?>">Kontakt</a></li>
  23. <li><a href="#" <? echo $onas; ?>">O nas</a></li>
  24. <li><a href="#" <? echo $pomoc; ?>">Pomoc</a></li>
  25. <li><a href="#" <? echo $blabla; ?>">Blabla</a></li>
Teraz w zależności od tego jaka strona jest aktywna string class=active zostanie wyświetlony tylko dla tej strony.
omajgat
Dziekuje za pomoc, znalazlem chyba cos prostszego, nie trzeba dodawac na kazdej podstronie.
Moze Komus sie przyda smile.gif
Kod
<?php
      $arrpages = array();

      $arrpages['/index.php?link=kontakt/index'] = 'Kontakt';
      $arrpages['/index.php?link=onas/index'] = 'Onas';
      $arrpages['/index.php?link=galeria/index'] = 'Galeria';
      $arrpages['/'] = 'Home';

      foreach($arrpages as $key => $value) {
         if ($_SERVER['REQUEST_URI'] == $key) {

            print('<li class="active">'.$value.'</li>');

         } else {

            print('<li><a href='.$key.'>'.$value.'</a></li>');

         }
      }
?>

Chyba śmiga ok.
Dziekuje jeszcze raz za pomoc.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.