Autor Zpráva
Josef Přerovský
Profil
Zdravím, bádám nad tím, jak udělat nahoře v navbaru, když jsem na stránce home, tak aby link jakože <li class="active">.....
A když přejdu na /forum/ tak aby byl zase aktivní link forum.... U instalačního scriptu na jiné doméně to mám přes ?krok=1 tak svítí krok 1

<?php
$krok = $_GET["krok"]; 
if($krok == "")
{ $krok = "1"; }
?>
<li <?php if($krok == "1")
{  ?>class="active"<?php }     ?>><a href="?krok=1">Krok 1</a></li>
      <li <?php if($krok == "2")
{  ?>class="active"<?php }     ?>><a href="?krok=2">Krok 2</a></li>
      <li <?php if($krok == "3")
{  ?>class="active"<?php }     ?>><a href="?krok=3">Krok 3</a></li>
Tak se chci zeptat, zda to jde udělat i vlastně u /forum/ /zpravy atd... jako aby to bylo přes url...
Taps
Profil
opet to musis poresit pres $_GET, principialne uplne stejne jak to mas v instalacnim skriptu
Ikki
Profil
$activePage = basename($_SERVER['PHP_SELF'], ".php"); //získá link
<li class="<?= ($activePage == 'index') ? 'active':''; ?>"><a href="#">Index</a></li> //zajistí active/unactive
Josef Přerovský
Profil
Právě že to mám řešené takhle:
<?php
$menux = mysql_query("SELECT * FROM menu ORDER BY id ASC");
while($menu = mysql_fetch_array($menux)) {?>
                        <li <?php if($menu['odkaz'] == $_SERVER['PHP_SELF'])
{  ?>class="active"<?php }     ?>> 
                            <a href="<?php echo"".$menu['odkaz'].""?>"><?php echo"".$menu['ikona'].""?> <?php echo"".$menu['nazev'].""?></a> 
                        </li>
<?php }; ?>
A neukáže mi to, když dám /forum/showtopic.php?id=8 třeba.. je to pouze v případě, kdy jsem na indexu nebo v indexu fóra
Ikki
Profil
Ve scriptu máš jasně stanovenou podmínku na zvolený odkaz, tedy
if(index = index)
Pokud máš všechny příspěvky zapsané v proměnné $menu['odkaz'], tak to fungovat bude, jinak ne. Musíš si tedy podmínku přepsat tak, aby obsahovala i ty odkazy, které v proměnné uvedené nemáš.

BTW. Řádkování

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0