Hej NG!
Jeg er p.t. ved at skrue et skalerbart menu system sammen.
Det er bygget op over en mysql database og implementeres i praksis som en 
linked liste implementation af et n'ary træ i PHP. Ved at foretage en 
pre-order traversering af det får man netop den struktur som menuen skal 
have. Så langt så godt...
På 
www.m-sig.dk/basic.jpg fremgår lidt mere af idéen bag det. Her fremgår 
strukturen på databasen også samt hvordan træet forventes opbygget.
Database-strukturen kan jo hurtigt smides i et multidimensionelt array med 
fx.
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    array_push($res_array, $row);
}
Man står så med et multidimensionelt array der indeholder strukturen - men 
kommer så til den "sjove" del hvor det reelt skal sorteres så datastrukturen 
kan opbygges. Rækkefølgen de jo gerne skulle ende op i (baseret på 'id' 
feltet i databasen) bliver jo:
    2,5,6,11,4,9,10,1,13,3,12,8,7 (jf. .jpg filen)
I korte træk gennemløbes strukturen jo ved primært at kigge på om en node 
har en child-reference. I så fald følges den. Hvis ikke følges en eventuel 
n_sibling reference (next sibling). Hvis der heller ikke er en - eller hvis 
den allerede har været fulgt - går vi et skridt tilbage igen. Det lugter jo 
helt afgjort af en rekursiv opgave - men derfra og til at få den nedfældet 
kommer problemet... Er der nogle der har nogle smarte idéer? Det er ikke 
noget problem at lave noget skrammel-kode der løser problemet men det er der 
jo ikke meget sjovt ved 
 
PFT
/Michael