Hi,
zur Abwechslung habe ich mal eine Frage in PHP.
Ich würde gern die Navigation einer Webseite so gestalten, dass die aktuell ausgewählte Seite im Menü hervorgehoben wird. Viele machen es ja über class="current" was sie in de <a> Tag einbauen. Da ich mein komplettes Menü über include() einbinde fällt das schonmal aus. Aber es gibt ja die Möglichkeit über die aktuelle URL zu schauen in welchem Pfad man sich befindet und anhand dessen die entsprechende Klasse zuzuweisen.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<? $url = array("menu1"=>"Menu1", "menu2"=>"Menu2", "menu3"=>"Menu3";
?>
<div id="navigation">
<table align="left">
<tr>
<? while(list($key, $val) = each($url))
{
echo '<td width="80" height="15"><a href="../'.$key.'"';
if (strstr(basename($_SERVER['PHP_SELF']),$key))
{
echo ' class="current"';
}
else
{
echo ' class="normal"';
}
echo '><img src="../images/buttons/'.$key.'.bmp" style="border:1px solid #ffffff;"></a></td>'."\n";
}
?>
</tr></table></div>
Leider erscheint bei mir immer die Klasse "normal" in allen <a> Tags, d.h. die if - Bedinung scheint nicht zu funktionieren. Die $key Werte sind aber eigentlich richtig, da ich diese ebenfalls für die *.bmp Namen verwende die auch gefunden werden.
Hat man mein Problem verstanden und kann mir evtl. helfen? :)
LG