Hallo und guten Tag,
ich muss von der Arbeit aus ein dynamisches Menü erstellen. Die Daten werden aus einer Datanbank rausgelesen. Das ist die ID, parentID und Description.
Nun das Problem. Ich bin voll der noobie und Anfänger in Sachen rekursive Funktionion. Ich will quasi das ein Menü erstellt wird.
z.B.
Home
News
Misc
Info
.....
Nun hat jedes dieser Punkte Unterkategorien
z.B.
Home
|__ About Us
|__ BlaBla
News
|__ Aktuell
|__ Archive
Misc
|__ Downloads
............. |__ PHP Scripte
Info
Diese Unterkategorien sollen jeweils nur angezeigt werden wenn man die dazugehörigen Oberkategrien angeklickt hat.
Mein Anfang sieht so aus:
Dies geht jedoch nur in die 2te Ebene rein! Weiter nicht! Es soll dynamisch gehen so das es keine begrenzung der Ebenen gibt.
Brauche da dringend Hilfe.
Ich bedank mich schon im Voraus.
(Bitte die Rechtschreibfehler nicht beachten )
ich muss von der Arbeit aus ein dynamisches Menü erstellen. Die Daten werden aus einer Datanbank rausgelesen. Das ist die ID, parentID und Description.
Nun das Problem. Ich bin voll der noobie und Anfänger in Sachen rekursive Funktionion. Ich will quasi das ein Menü erstellt wird.
z.B.
Home
News
Misc
Info
.....
Nun hat jedes dieser Punkte Unterkategorien
z.B.
Home
|__ About Us
|__ BlaBla
News
|__ Aktuell
|__ Archive
Misc
|__ Downloads
............. |__ PHP Scripte
Info
Diese Unterkategorien sollen jeweils nur angezeigt werden wenn man die dazugehörigen Oberkategrien angeklickt hat.
Mein Anfang sieht so aus:
PHP-Code:
<?php
error_reporting(E_ALL);
define('MYSQL_HOST', 'localhost');
define('MYSQL_USER', 'root');
define('MYSQL_PASS', '');
define('MYSQL_DATABASE', 'tree');
//connect to database
function connect_to_sql(){
@mysql_pconnect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR
die("Keine Verbindung zur Datenbank. Fehlermeldung:".mysql_error());
mysql_select_db(MYSQL_DATABASE) OR
die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());
}
function getLevel($iIdParent) {
$sQuery = 'SELECT * FROM tree WHERE parentID = '.$iIdParent;
$rResult = mysql_query($sQuery);
while ($aLine = mysql_fetch_array($rResult, MYSQL_ASSOC)) {
echo $aLine['parentID']." - ".$aLine['ID'];
echo('<a href=?go='.$aLine['ID'].'>'.$aLine['bsp'].'</a><br />');
if (isset($_REQUEST["go"])) {
if ($_REQUEST["go"] == $aLine['ID']) {
getLevel($aLine['ID']);
}
}
}
}
connect_to_sql();
getLevel(0);
?>
Brauche da dringend Hilfe.
Ich bedank mich schon im Voraus.
(Bitte die Rechtschreibfehler nicht beachten )
Kommentar