array menü

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • array menü

    Hi !

    Habe ein kleines Problem mit einem Menü, aber zuerst mal, was ich bisher habe.

    PHP-Code:
    $menu = array
    (
        
    "1" => array
        (
            
    "name" => "Menü 1",
            
    "url" => "billig_menue.php?page=m1",
            
    "open" => 0
        
    ),
        
    "2" => array
        (
            
    "name" => "Menü 2",
            
    "url" => "billig_menue.php?page=m2",
            
    "open" => 0
        
    ),
        
    "3" => array
        (
            
    "name" => "Menü 3",
            
    "url" => "billig_menue.php?page=m3",
            
    "open" => 0,
            
    "content" => array
            (
                
    "1" => array
                (
                    
    "name" => "Submenü 3.1",
                    
    "url" => "billig_menue.php?page=sm1",
                    
    "open" => 0
                
    ),
                
    "2" => array
                (
                    
    "name" => "Submenü 3.2",
                    
    "url" => "billig_menue.php?page=sm2",
                    
    "open" => 0,
                    
    "content" => array
                    (
                        
    "1" => array 
                        (
                            
    "name" => "Subsubmenü 3.2.1",
                            
    "url" => "billig_menue.php?page=ssm1",
                            
    "open" => 0
                        
    )
                    )
                ),
                
    "3" => array
                (
                    
    "name" => "Submenü 3.3",
                    
    "url" => "billig_menue.php?page=sm3",
                    
    "open" => 0
                
    )
            )
        ),
        
    "4" => array
        (
            
    "name" => "Menü 4",
            
    "url" => "billig_menue.php?page=m4",
            
    "open" => 0
        
    )
    ); 
    Soweit das Array ... nun die eigentlich Funktion ...

    PHP-Code:
    function rek_ausgabe ($akt$ebene) {
        
    $pos 1;
        do {
            for (
    $i 0;$i $ebene$i++)
            {
                echo 
    "-";
            }
            echo 
    ' <a href="' $akt[$pos]["url"] . '">' $akt[$pos]["name"] . '</a><br />';
            if ((
    is_array($akt[$pos]["content"])) && (basename($_SERVER["REQUEST_URI"]) == $akt[$pos]["url"])) {
                
    rek_ausgabe($akt[$pos]["content"], ($ebene 1));
                
    $pos $pos 1;
            } else {
                
    $pos $pos 1;
            }
        } while (
    next($akt) != FALSE);

    Wie ihr vielleicht erkennen könnt, schaue ich im Moment noch auf die URL inkl. der Parameter, was mir aber zu umständlich ist (wenn es mal mehr als nur den einen Parameter gibt) und momentan auch nur bis zur ersten tieferen Ebene funktioniert.

    Nun habe ich obe im Array schon das Element "open" reingemacht, welches ich bei der Aktivierung des Unterbaums gerne auf eins setzen würde und darüber dann entscheiden möchte, welcher Unterbaum aufgeklappt werden soll.

    Nun hab ich aber das Problem, dass ein "böser" Benutzer ganz unten in einem Untermenü sein kann und dann auf ein Hauptmenü klickt. Da müsste ich ja die ganze Strecke der auf 1 gesetzten "open" Elemente nachverfolgen und gleichzeitig das andere Untermenü auf open=1 setzen. Und setzt es gerade bei mir aus.

    Zu Hülf büdde.

    Gruß

    le_cheffe
Lädt...
X