Autor Zpráva
Jean
Profil
Zdravim vsecky, problem jednoduchej, ale nejak jsem se do nej zamotal:/ Mam tuto rekurzivni fci, ktera mi projde vsecky polozky menu podle zavislosti na rodicich:



function menu($hloubka, $premodule, $z = 0)
{

static $menu = array();

$sql = "select * from sys_tree where visible=1 and pre_modul='$premodule' order by poradi";
$res = mysql_query($sql) or die(mysql_error());
while($row = mysql_fetch_array($res)):

$menu[$z] = (array) $menu[$z];
$menu[$z]["modul"] = $row["jmeno_modulu"];

menu($hloubka, $row["jmeno_modulu"], $z);
$z++ ;
endwhile;
return $menu;
}


Do pole menu se mi ulozi jmena kategorii, ale vzdy az ty nejspodnejsi(nejvetsi hloubka) z kazde hlavni kategorie, (spravne hlavni kategorie se prpisou pri dalsim pruchodu cyklu tema pod nima:/ )

Nemuzu za boha prijit na to, jak dynamicky vytvaret tu strukturu pole, aby odpovidala strukture menu. Podotykam ze presny pocty mi nejsou v okamziku generovani pole znamy...

Diky moc vsem za nakopnuti...
gaminn
Profil *

function menu($premodule = '')
{

if(!isset($menu)) $menu = array();

$sql = "select * from sys_tree where pre_modul='$premodule'";
$res = mysql_query($sql) or die(mysql_error());
while($row = mysql_fetch_array($res)):
$menu[$row["jmeno_modulu"]]["_child"] = menu($row["jmeno_modulu"]);
endwhile;
return $menu;
}


Snad tam nikde není chyba, otestuj to;) Ta funkce asi nebude úplně podle tvých představ, ale principielně funguje...
Jean
Profil
Diky moc, to je ono, prizpusobil jsem to trochu a facha to...
Toto téma je uzamčeno. Odpověď nelze zaslat.

0