A więc. Mam sobie funkcje tworzącą wielopoziomowe menu do n. Lecz muszę zrobić aby było ono rozwijane bo kliknięciu w kategorie (link). Np.
Kod
1.kategoria
2.kategoria2
Kliknie 1.kategoria to mam np.
Kod
1.kategoria
- pod kategoria dla kategoria
2.kategoria2
Przyczym wszystkie kategorie to linki więc nie wchodzi w grę żadne JS.
Poradziłem sobie z tym menu do pewnego stopnia tzn. menu się rozwija lecz gdy nacisne np. kategoria2 to menu wygląda tak:
Kod
1.kategoria
- pod kategoria dla kategoria
2.kategoria2
- pod kategoria dla kategoria2
Zamiast:
Kod
1.kategoria
2.kategoria2
- pod kategoria dla kategoria2
Podam kod generujący zwykłe nie rozwijane menu i ten wadliwy który generuje nie do końca dobrze rozwijane menu.
Nie rozwijane:
<?php
function menu_jedna($id_nadrzedne,$id=0){
global $rzad , $linki , $menu ,$u, $dane ; if ($id!=0) $query = 'select id, kategoria,nazwa,adres_manualny,adres from podstrony where kategoria='.$id_nadrzedne.' and id = '.$id;
else $query = 'select id, kategoria,nazwa,adres_manualny,adres from podstrony where kategoria='.$id_nadrzedne.'';
++$o;
$adres='';
$nazwa = $row['nazwa'];
$id = $row['id'];
$adres_manualny = $row['adres_manualny'];
$adres = $row['adres'];
$kategoria = $row['kategoria'];
$kategoria_r='p_'.$kategoria;
if ($$kategoria == 0){ ++$rzad; $$kategoria_r=$rzad; }
++$$kategoria;
if ($kategoria==0
) { echo $o.'. '; $rzad=0;} else {
for($i=0;$i<$$kategoria_r;++$i){
}
}
echo '<a href="'.$www.'/zawi%20cms/'.$adres.'">'.$nazwa.'</a><br/>'; menu_jedna($row['id']);
}
}
menu_jedna(0)
?>
Generujące rozwijane (wadliwe)
<?php
function podkategoria($id_nadrzedne,$spacje){
$query = 'select id, kategoria,nazwa,adres_manualny,adres from podstrony where kategoria='.$id_nadrzedne.'';
$nazwa = $row['nazwa'];
$id2 = $row['id'];
$adres_manualny = $row['adres_manualny'];
$adres = $row['adres'];
$kategoria = $row['kategoria'];
$kategoria_r='p_'.$kategoria;
if ($$kategoria == 0){ ++$rzad; $$kategoria_r=$rzad; }
++$$kategoria;
if ($kategoria==0
) { echo $o.'. '; $rzad=0;} else {
for($i=0;$i<$spacje;++$i){
}
}
echo '<a href="'.$www.'/zawi%20cms/'.$adres.'">'.$nazwa.','.$id2.','.$_GET['pop'].','.$l.'</a><br/>'; $q = mysql_query('select count(id) from podstrony where kategoria='.$id2);
if ($czy!=0 AND $id2==$_GET['site']) { podkategoria($_GET['site']); }
}
}
function menu_rozwij($id_nadrzedne=0){
global $rzad , $dane, $k, $poprzedni,$h,$j ;
$query = 'select id, kategoria,nazwa,adres_manualny,adres from podstrony where kategoria='.$id_nadrzedne.'';
++$o;
$nazwa = $row['nazwa'];
$id2 = $row['id'];
$adres_manualny = $row['adres_manualny'];
$adres = $row['adres'];
$kategoria = $row['kategoria'];
$kategoria_r='p_'.$kategoria;
if ($$kategoria == 0){ ++$rzad; $$kategoria_r=$rzad; }
++$$kategoria;
if ($kategoria==0
) { echo $o.'. '; $rzad=0;} else {
for($i=0;$i<$$kategoria_r;++$i){
}
}
++$j;
$q = mysql_query('select count(id) from podstrony where kategoria='.$id2); echo '<a href="'.$www.'/zawi%20cms/'.$adres.'">'.$nazwa.','.$id2.','.$_GET['site'].','.$j.'</a><br/>';
if ($czy!=0 AND $id2==$_GET['site']) podkategoria($id2,++$$kategoria_r);
else if ($czy!=0 ) menu_rozwij($id2) ;
menu_rozwij(0);
}
}
?>
Bardzo proszę o pomoc i z góry dziękuję.
BTW. $_GET['site'] to id wybranej kategorii/podstrony.
Pozdrawiam!