Navigationsmenü mit Rechtesystem

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

  • Navigationsmenü mit Rechtesystem

    Hallo Leute,
    auch auf die Gefahr hin, auf die Suchfkt. o.ä. verwiesen zu werden, hier mein Anliegen:

    Ich bin z.Z. dabei mir eine möglichst simple Navigation auf Array-Basis zu basteln. Der Ansatz sieht dabei wie folgt aus:
    Das Menü wird in einem Mehrdimensionalen Array gespeichert
    PHP-Code:
    $menu['Startseite'] = 'startseite.php';

    $menu['Allgemeines'] = array();
    $menu['Allgemeines']['Über uns'] = 'allgemeines.php';
    $menu['Allgemeines']['Kontakt'] = 'startseite.php'
    Das lässt sich in beliebig viele Ebenen fortsetzen. Das Ergebnis sieht dann wie folgt aus:


    Startseite(verlinkt)

    Allgemeines(nicht verlinkt, da Titel)
    --Über uns(verlinkt)
    --Kontakt (verlinkt)

    Ausgelesen wird das Menü über eine rekursive Funktion create_menu($menu), die das Array durchgeht und die entsprechende Struktur erstellt (als unsortierte Liste)

    Nun möchte ich dem ganzen ein Rechtesystem auf Mysql Basis hinzufügen. Es wäre kein Problem ein weiteres Menü (z.B. $admin...) anzuhängen, allerdings würde ich gerne einnerhalb des $menu Menüs bestimmte Punkte bestimmten Rechte zuweisen.

    Sieht jetzt irgendwer Rettung in meinem Array Menü oder muss ich meine Navi zukünftig auf Mysql Basis erstellen. Fand eigentlich, dass mein Ansatz ziemlich brauchbar war und würde in halt gerne weiterverwenden. Bei Bedarf kann ich auch noch die Funktion posten, hab sie nur grad nicht zur Hand

    Grüße ZC

  • #2
    okaay, ich glaube mir ist die Lösung heute über Nacht selber eingefallen...

    Ich erstelle das Menü stückweise je nach übergebenem Rechtelevel.
    Sprich
    PHP-Code:
    /*--------Allgemeines Menü (für alle sichtbar)------------*/
    $menu['Startseite'] = 'startseite.php';

    $menu['Allgemeines'] = array();
    $menu['Allgemeines']['Über uns'] = 'allgemeines.php';
    $menu['Allgemeines']['Kontakt'] = 'startseite.php';

    /*--------Menü für Userlevel 1 (z.B. 'Registrierter Benutzer')---------*/
    if ($rechte == 1) {
     
    $menu['Allgemeines']['Infos für regisitrierte Benutzer'] = 'reginfo.php';

     
    $menu['Mein Konto'] = array();
     
    $menu['Mein Konto']['Übersicht'] = 'kontouebersicht.php';
     
    $menu['Mein Konto']['Profil'] = 'profil.php';
    }

    /*--------Menü für Userlevel 5 & 6 (z.B. 'Admin' und 'Moderator')---------*/
    if (($rechte == 5) || ($rechte == 6)) {
    $menu['Administration] = 'admin.php;

    Sorry für den Monolog, aber manchmal tut Dummheit....naja....
    Für weitere Anmerkungen binich trotzdem zu haben!

    Kommentar

    Lädt...
    X