Probleme mit Dyn. Menue mit einem Sub - Level

Hi Sven,

es scheint an jedem Menueeintrag, der keinen Link erhält fehlt die Hintergrundgrafik.

HTML:
<div class="fstLevel"><a href="/unternehmen.php">Unternehmen</a></div>
<div class="fstLevel"><a href="/folienschriften.php">Folienschriften</a></div>
<div class="fstLevel"><a href="/offsetdruck.php">Offsetdruck</a></div>
<div class="fstLevel"><a href="/siebdruck.php">Siebdruck</a></div>
<div class="fstLevel"><a href="/textildruck.php">Textildruck</a></div>
<div class="fstLevel"><a href="/untereloxaldruck.php">Untereloxaldruck</a></div>
<div class="fstLevel"><a href="/gravuren.php">Gravuren</a></div>
<div class="fstLevel"><a href="/webdesign.php">Web-Design</a></div>
<div class="fstLevelActive">Allgemein</div>
<div class="secLevel"><a href="/faq.php">FAQ</a></div>
<div class="secLevel"><a href="/nochmehr.php">Noch mehr</a></div>

ebenso:

HTML:
<div class="fstLevel"><a href="/unternehmen.php">Unternehmen</a></div>
<div class="fstLevel"><a href="/folienschriften.php">Folienschriften</a></div>
<div class="fstLevel"><a href="/offsetdruck.php">Offsetdruck</a></div>
<div class="fstLevel"><a href="/siebdruck.php">Siebdruck</a></div>
<div class="fstLevel"><a href="/textildruck.php">Textildruck</a></div>
<div class="fstLevel"><a href="/untereloxaldruck.php">Untereloxaldruck</a></div>
<div class="fstLevel"><a href="/gravuren.php">Gravuren</a></div>
<div class="fstLevel"><a href="/webdesign.php">Web-Design</a></div>
<div class="fstLevelActive"><a href="/allgemein.php">Allgemein</a></div>
<div class="secLevelActive">FAQ</div>
<div class="secLevel"><a href="/nochmehr.php">Noch mehr</a></div>


Wie du siehst bekommen beide DIV's die Klasse active zugeordnet,
jedoch bekommen nur die Menueeinträge mit zugeordnetem Link Klassen zugeordnet.


Gruß M@rk
 
Ahso... das CSS kannte ich ja nicht :-)
Da war mein zusätzliches Feature der Bug.
Code:
foreach($menuStruct as $key1 => $value1)
    {
        $in_array = array_search($_SERVER['PHP_SELF'], $menuStruct[$key1]);
        switch($in_array)
            {
                case FALSE:
                    echo '<div class="fstLevel"><a href="' . $menuStruct[$key1]['root']. '">' . $key1 . "</a></div>\n";
                        break;
                
                default:
                    foreach($menuStruct[$key1] as $key2 => $value2)
                        {
                            $strPrefix = ($key2 == 'root') ? 'fst' : 'sec';
                            $strSuffix = ($value2 == $_SERVER['PHP_SELF'] || $key2 == 'root') ? 'Active' : '';
                                                       
                            echo '<div class="'.$strPrefix.'Level'.$strSuffix.'"><a href="'.$value2.'">' : '';
                            echo ($key2 == 'root')? $key1 : $key2;
                            echo '</a>' : '';
                            echo "</div>\n";
                        }
            }
    }
jetzt sind wieder überall Links.
 
Hallo Sven,


vielen Dank nochmal für Deine Geduld und Mühe... Jetzt gehts wunderbar,
wobei PHP noch die Doppelpunkte in Zeile 1 und 4 anmeckerte...
die ich dann gegen ein Komma getauscht habe und es ging.

PHP:
echo '<div class="'.$strPrefix.'Level'.$strSuffix.'"><ahref="'.$value2.'">' : '';
echo ($key2 == 'root')? $key1 : $key2;
echo '</a>' : '';
echo "</div>\n";


echo '<div class="'.$strPrefix.'Level'.$strSuffix.'"><ahref="'.$value2.'">' , '';
echo ($key2 == 'root')? $key1 : $key2;
echo '</a>' , '';
echo "</div>\n";

Da kann ich jetzt weitermachen und auch weiterlernen...


Gruß M@rk
 
Oh ja... die Doppelpunkte hatte ich vergessen rauszunehmen:-)

Korrekt sollte es so aussehen:
Code:
foreach($menuStruct as $key1 => $value1)
    {
        $in_array = array_search($_SERVER['PHP_SELF'], $menuStruct[$key1]);
        switch($in_array)
            {
                case FALSE:
                    echo '<div class="fstLevel"><a href="' . $menuStruct[$key1]['root']. '">' . $key1 . "</a></div>\n";
                        break;
                
                default:
                    foreach($menuStruct[$key1] as $key2 => $value2)
                        {
                            $strPrefix = ($key2 == 'root') ? 'fst' : 'sec';
                            $strSuffix = ($value2 == $_SERVER['PHP_SELF'] || $key2 == 'root') ? 'Active' : '';
                                                       
                            echo '<div class="'.$strPrefix.'Level'.$strSuffix.'"><a href="'.$value2.'">' ;
                            echo ($key2 == 'root')? $key1 : $key2;
                            echo "</a></div>\n";
                        }
            }
    }
 
Zurück