Autor Zpráva
Lubosh
Profil
Měl bych dotaz na menu v PHP. Mám tent zápis pro vytvoření menu:

<ul>
<?php

$stranka =  'stranka1';
if (isset($_GET['page'])) $page = $_GET['page']; else $page = ''; echo "  <li><a "; if ($page=="$stranka") {   echo " class='aktivni' "; } echo "href='index.php?page=$stranka'>Stránka 1</a></li>\n";

$stranka =  'stranka2';
if (isset($_GET['page'])) $page = $_GET['page']; else $page = ''; echo "  <li><a "; if ($page=="$stranka") {   echo " class='aktivni' "; } echo "href='index.php?page=$stranka'>Stránka 2</a></li>\n";

?>
</ul>


- to mě generuje menu v podobě (pokud je otevřená Stránka 1 = index.php?page=stranka1):

<ul>
  <li><a class='aktivni' href='index.php?page=stranka1'>Stránka 1</a></li>
  <li><a href='index.php?page=stranka2'>Stránka 2</a></li>
<ul>


- jak přidat třídu (class='aktivni') ke stránce Stránka 1, když mám otevřené Podstránka 1 = index.php?page=podstranka1 ?????

Díky za radu!
Taps
Profil
Lubosh:
To by jsi podstránku musel generovat v nějakém takovém tvaru
<a class='aktivni' href='index.php?page=stranka1&podstranka=1'>

Nebo je ještě možnost využít podmínky if
Lubosh
Profil
To druhé menu s podstránkama mám někde jinde v html:

<ul>
  <li><a class='aktivni' href='index.php?page=stranka1'>Stránka 1</a></li>
  <li><a href='index.php?page=stranka2'>Stránka 2</a></li>
<ul>


----------------------------------------------------------------------------------------------
<ul>
  <li><a href='index.php?page=podstranka1'>Podstránka 1</a></li>
  <li><a href='index.php?page=podstranka2'>Podstránka 2</a></li>
<ul>
pEeLL
Profil
Lubosh:
nejjednodussi v tvem pripade bude kdyz si jeste pred hlavnim menu udelas seznam ktere podmenu patri ke ktere oilozce menu.

neco jako
$stranka1podmenu = array('podstranka1','podstranka2',...);  


a pak si pri tvoreni hlavniho menu si zkontrolujes
 if (in_array("$_GET[podstranka]",$stranka1podmenu)) {class=active}


nebo bys to mohl nacpat do jednoho vetsiho pole jako klic- hodnota. kde klic by nayev hl polozky a hodnota by byla nazec podpolozky.
AM_
Profil
Tak především to udělej buď cyklem, nebo z toho vyházej všechno to zbytečné PHP, použij obyčejné HTML a nech tam jen tak pro vkládání class="aktivni" pokud je daná stránka aktivní. Pak ti zmizí nesmysly jako opakování příkazu "if (isset($_GET['page'])) $page = $_GET['page'];" ten bohatě stačí jednou.

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