B
BartTheDevil89
Guest
Hallo,
ich nutze für ein Kategoriesystem Nested Sets. Soweit funktioniert auch alles. Jedoch habe ich nun 2 Fragen:
1. Pfad herausfinden:
Beispielsweise schaut meine Kategorieaufteilung so aus:
Haupt1
- Unter1
- Unter2
-- UnterUnter1
-- UnterUnter2
-- UnterUnter3
- Unter3
Haupt2
- Unter1
Haupt3
- Unter1
- Unter2
Aber wie kann ich jetzt einen Pfad herausfinden? Also beispielsweise der Pfad zu UnterUnter2 wäre ja folgendes:
Haupt1 -> Unter2 -> UnterUnter2
Aber wie finde ich diesen Pfad heraus?
2. Kategorie nur teilweise öffnen:
Haupt1
- Unter1
- Unter2
-- UnterUnter1
-- UnterUnter2
-- UnterUnter3
- Unter3
Haupt2
- Unter1
Haupt3
- Unter1
- Unter2
wäre jetzt wieder der Ausgangspunkt. Mit dieser Abfrage würde ich ja den Baum komplett ausgeben können:
CODE
$result2 = $db->query("SELECT group2.*,
COUNT(*) AS level
FROM menu_eintrag AS group1,
menu_eintrag AS group2
WHERE group2.lft BETWEEN group1.lft AND group1.rgt and group1.menu = $menu[id] and group2.menu = $menu[id]
GROUP BY group2.lft;");
while($menu_eintrag = mysql_fetch_array($result2)){
}
Aber wie schaffe ich es zum Beispiel, dass ich erst
Haupt1
Haupt2
Haupt3
habe. Bei einem Öffnen der Haupt1
kommt dann
Haupt1
- Unter1
- Unter2
- Unter3
Haupt2
Haupt3
und so weiter...also das immer nur Teile des Baumes offen sind.
Vielen Dank für die nette Hilfe...
ich nutze für ein Kategoriesystem Nested Sets. Soweit funktioniert auch alles. Jedoch habe ich nun 2 Fragen:
1. Pfad herausfinden:
Beispielsweise schaut meine Kategorieaufteilung so aus:
Haupt1
- Unter1
- Unter2
-- UnterUnter1
-- UnterUnter2
-- UnterUnter3
- Unter3
Haupt2
- Unter1
Haupt3
- Unter1
- Unter2
Aber wie kann ich jetzt einen Pfad herausfinden? Also beispielsweise der Pfad zu UnterUnter2 wäre ja folgendes:
Haupt1 -> Unter2 -> UnterUnter2
Aber wie finde ich diesen Pfad heraus?
2. Kategorie nur teilweise öffnen:
Haupt1
- Unter1
- Unter2
-- UnterUnter1
-- UnterUnter2
-- UnterUnter3
- Unter3
Haupt2
- Unter1
Haupt3
- Unter1
- Unter2
wäre jetzt wieder der Ausgangspunkt. Mit dieser Abfrage würde ich ja den Baum komplett ausgeben können:
CODE
$result2 = $db->query("SELECT group2.*,
COUNT(*) AS level
FROM menu_eintrag AS group1,
menu_eintrag AS group2
WHERE group2.lft BETWEEN group1.lft AND group1.rgt and group1.menu = $menu[id] and group2.menu = $menu[id]
GROUP BY group2.lft;");
while($menu_eintrag = mysql_fetch_array($result2)){
}
Aber wie schaffe ich es zum Beispiel, dass ich erst
Haupt1
Haupt2
Haupt3
habe. Bei einem Öffnen der Haupt1
kommt dann
Haupt1
- Unter1
- Unter2
- Unter3
Haupt2
Haupt3
und so weiter...also das immer nur Teile des Baumes offen sind.
Vielen Dank für die nette Hilfe...