Hallo Zusammen
Neu im Forum und schon hab ich ein Problem. Hoffe ihr könnt mir helfen.
Mein Problem
Ich versuche ein dynamisches Menu zu gestalten welches ich in drei Ebenen aufteile:
In meiner DB besitze ich 3 Tabellen, pro Ebene 1.
tb_kategorie
id_kategorie
kategorie_name
kategorie_berechtigung
tb_bereich
id_bereich
bereich_name
bereich_berechtigung
kategorie_id
tb_seite
id_seite
seite_name
seite_berechtigung
bereich_id
Nun lese ich alle 3 Tabellen aus und speichere sie in unterschiedliche Arrays wie z.B. hier:
Mit folgendem Code möchte ich nun das Menu abfüllen:
Logischerweise lädt der Browser nun ewigs lange bei diesen vielen While-Schleifen und Bedingungen hat jemand einen Vorschlag für eine bessere Lösung.
Dankeschön...
Neu im Forum und schon hab ich ein Problem. Hoffe ihr könnt mir helfen.
Mein Problem
Ich versuche ein dynamisches Menu zu gestalten welches ich in drei Ebenen aufteile:
- Kategorie
- Bereich
- Seite
In meiner DB besitze ich 3 Tabellen, pro Ebene 1.
tb_kategorie
id_kategorie
kategorie_name
kategorie_berechtigung
tb_bereich
id_bereich
bereich_name
bereich_berechtigung
kategorie_id
tb_seite
id_seite
seite_name
seite_berechtigung
bereich_id
Nun lese ich alle 3 Tabellen aus und speichere sie in unterschiedliche Arrays wie z.B. hier:
PHP-Code:
$kategorie[$help]["id"] = $daten->id_kategorie;
$kategorie[$help]["name"] = $daten->kategorie_name;
$kategorie[$help]["link"] = $daten->kategorie_link;
PHP-Code:
$help1 = 0;
$help2 = 0;
$help3 = 0;
echo "<ul>";
while($kategorie[$help1]["id"]){
echo "<li><a href='index.php?site=".$kategorie[$help1]["link"]."'>".$kategorie[$help1]["name"]."</a><ul>";
while($bereich[$help2]["id"]){
if($kategorie[$help1][$help2] == $bereich[$help2]["kategorie"]){
echo "<li><a href='index.php?site=".$bereich[$help2]["link"]."'>".$bereich[$help2]["name"]."</a><ul>";
while($seite[$help3]["id"]){
if($bereich[$help2]["id"] == $seite[$help3]["bereich"]){
echo "<li><a href='index.php?site=".$seite[$help3]["link"]."'>".$seite[$help3]["name"]."</a></li>";
}
$help3++;
}
$help2++;
echo "</li></ul>";
}
}
echo "</ul></li>";
$help1++;
}
echo "</ul><br style='clear: left' />";
}
Dankeschön...