Hallo zusammen,
Ich stehe vor folgendem Problem:
Ich möchte gern ein Menü mit zwei Ebenen realisieren. Das Schema etwa wie:
1. Kapitel
2. Kapitel
2.1 Abschnitt
2.2 Abschnitt
2.3 Abschnitt ...
3. Kapitel
Vorgaben sind:
1. Der Menüpunkt der aktuell angezeigten Seite ist nicht verlinkt.
2. Die Ausgabe des Menüs soll als Liste <ul><li></li></ul> erfolgen.
3. Jetzt kommt das Problem: der jeweilige obere Kapitel-Menüpunkt soll nicht verlinkt sein, wenn einer der zugehörigen unteren Abschnitt-Menüpunkte aktuell angezeigt wird.
Frage: Wie kann ich in einem Array das erste Key-Value-Paar separieren und dann mit beliebigen Formatangaben versehen, wenn es gerade nicht die aktuell angezeigte Seite ist?
Ich füge Teile des bisherigen Codes an:
1. mehrere Arrays:
$arr1['1. Kapitel'] = array("root" => $siteRoot."index.php");
$arr2['2. Kapitel'] = array("root" => $siteRoot."kap20.php", "3.1 Abschnitt" => $siteRoot."kap21.php", "3.2 Abschnitt" => $siteRoot."kap22.php", "3.3 Abschnitt" => $siteRoot."kap23.php", "3.4 Abschnitt" => $siteRoot."kap24.php", "3.5 Abschnitt" => $siteRoot."kap25.php");
$arr3['3. Kapitel'] = array("root" => $siteRoot."kap30.php");
2. Jetzt der Code für das verschachtelte 2. Kapitel:
if($PHP_SELF != $arr2['root']){
foreach($arr2 as $key=>$value){
if($PHP_SELF == $value['root']){
echo "<li id='navon'>$key<li>\n";
}
else {
echo "<li class='navoff'><a href="".$value['root']."">$key</a><li>\n";
}
foreach($value as $key2=>$value2) {
if(array_search($PHP_SELF,$value)) {
if($key2 != "root") {
if($PHP_SELF == $value2) {
echo "<li id='subnavon'><a href="".$value2."">$key2</a><li>\n";
}
else {
echo "<li class='subnavoff'><a href="".$value2."">$key2</a><li>\n";
}
}
}
}
}
}
Es kann sein, dass ich mit dem Code komplett auf dem Holzpfad bin und bin dankbar für Kommentare.
Gruß Günther