ERLEDIGT
NEIN
NEIN
ANTWORTEN
6
6
ZUGRIFFE
1446
1446
EMPFEHLEN
-
Hallo,
Wie kann ich mir ein dynamisches Menu anzeigen lassen, sodaß die Submenupunkte nur angezeigt werden, wenn man auf der Seite des Oberlinks ist, oder auf einer der Submenupunkte des Oberlinks?
Meine Einträge in der DB sind mit ID und parentID eingetragen und aufrufen tu ich das menu wie folgt:
Nun müßte ja eine zusätzliche Abfrage vor dem letzten } aufgerufen werden mit den Unterpunkten. Im Link selber wird jede Seite mit ?site=$id aufgerufen.PHP-Code:$result = $db->query("SELECT * FROM bb".$n."_menulink WHERE parentid=0 ORDER by linkorder ASC");
while($menu = $db->fetch_array($result)){
$id = $menu['id'];
$name = $menu['name'];
$link = $menu['link'];
$parentid = $menu['parentid'];
eval("\$menubit .= \"".$tpl->get("menubit")."\";");
}
Irgendwie komme ich nicht weiter.
-
Mit SESSIONS koentest du es machen
PHP-Code:<?php
echo "Deine IP - Adresse ist:$_SERVER["REMOTE_ADDR"]";
?>
-
was hat das mit Sessions zu tun?
mein menu z.b.:
-Link1
-Link2
---Link21
---Link22
-Link3
-Link4
-Link5
jetzt sollen die Links Link21 und Link22 nur sichtbar sein, wenn man auf der Seite des Links Link2, Link21 oder Link22 ist.
Die einzelnen Seiten rufe ich über die ID des Links auf, also ?site=$id
-
Die Suche nach parentid gibt zum Beispiel diesen Beitrag:
http://www.tutorials.de/tutorials178...light=parentid
Da steht eigentlich alles drin, um so ein Menü zu bauen, weitere Links sind auch enthalten.
Die Grundvarianten sind zum einen Deine mit parentID, welche da bis zu Ende durchgespielt wird und Nested Sets, die etwas mühsamer sind, aber schneller beim auslesen, dafür langsamer und schwieriger beim Eintragen.
-
Die einfache Ausgabe ist ja nicht das problem, nur die Anzeige, so wie ich es will, also nur wenn man in der jeweiligen Kategorie drinne ist, wie oben beschrieben bekomme ich nicht hin.
-
Genau das ist dort beschrieben, mit mehreren Codebeispielen.
Der Trick ist, die Menüstruktur zu übergeben (Post 11 im Link).
Wenn Du die IDs nicht mit übergeben willst, kannst Du sie Dir auch Ebene für Ebene rekursiv aus der DB holen. Ist aber wohl nicht besonders effizient. Aber als Workaround, um die IDs im Skript selbst zu bekommen, ungefähr so:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
//ein bisschen Pseudocode, da hier im Editor gepostet $ids=array(); function getparents($id,$ids) { //query SELECT id,parentID FROM menustruktur WHERE id=$id; //$row = mysql fetch array $ids[]=$row['id']; if ($row['id']!=0) { return getparents($row['parentID'],$ids); } else { return implode(',',$ids); } } $parentIDsAsKeywordINString = getparents($_GET['id'],$ids);
Ich würde aber nie behaupten, dass dies performant ist
-
11.01.05 11:30 #7
- Registriert seit
- Jan 2005
- Beiträge
- 1
Schaue mal hier
vieleicht hilft dir das weiter.
MFG Reno C Ross
Ähnliche Themen
-
Dynamisches Menu
Von mkoeni1 im Forum Javascript & AjaxAntworten: 4Letzter Beitrag: 18.11.07, 16:29 -
dynamisches menu mit xml jsp und java bean
Von Merschi im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 0Letzter Beitrag: 18.08.07, 12:47 -
rechte Maustaste->Menu->noch ein Menu
Von fischmir im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 2Letzter Beitrag: 18.07.05, 15:15 -
Dynamisches Menu
Von mruppert im Forum Visual Basic 6.0Antworten: 6Letzter Beitrag: 30.11.04, 10:36 -
Dynamisches Menu
Von caharim im Forum PHPAntworten: 4Letzter Beitrag: 08.03.04, 17:56





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren