Ich habe mir einen code für ein dynamisches Menü gebaut, dass auf Mysql aufgebaut ist. Hier ist einmal der code:
Es funktioniert soweit, leider werden immer nur 2 Ebenen ausgegeben. Ich habe aber vier. Wenn man bei der zweiten Ebene auf einen Link klickt, sieht man nur noch die 2. und die 3. Ebene. Die erste verschwindet einfach.
Hoffe Ihr könnt mir helfen.
Vielen Dank schon im Voraus
PHP-Code:
<?php
//zuerst wird hier die aktuelle Seite aus einer Datenbank abgefragt.
//Wichtige Teile sind hier:
//$row->parentid = Die id der übergeordneten Seite.
//$row->id = Die id der aktuellen Seite.
error_reporting(E_ALL);
define('MYSQL_HOST', 'localhost');
define('MYSQL_USER', 'bn');
define('MYSQL_PASS', 'pw');
define('MYSQL_DATABASE', 'db');
//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, $test) {
$sQuery = 'SELECT id, titel, link, parentid, content_id FROM `datenbank`.`seiten` WHERE parentid = "'.$iIdParent.'" ORDER BY content_id;';
$rResult = mysql_query($sQuery);
while ($aLine = mysql_fetch_object($rResult)) {
echo('<a href="'.$aLine->link.'.htm">'.$aLine->titel.'</a><br/>');
if ($test == $aLine->id) {
$test=$aLine->parentid;
getLevel($aLine->id, $test);
}
}
}
$obid=$row->parentid;
$test2=$row->id;
connect_to_sql();
getLevel($obid, $test2);
?>
Hoffe Ihr könnt mir helfen.
Vielen Dank schon im Voraus

Kommentar