Das mit den Tabellen meinte ich so:
Code:
tabelle user:
user_id, group_id, ...
1, 1, ...
2, 1, ...
3, 2, ...
tabelle groups:
group_id, name, ...
1, Anwender, ...
2, Admins, ...
tabelle grouprights:
group_id, right_id
1, 1
2, 1
2, 2
2, 3
tabelle rights:
right_id, right_name
1, "Inhalte sehen"
2, "Inhalte erstellen"
3, "Inhalte löschen"
Zur Anzeige des Menüs gehst du dann folgendermaßen vor (Pseudocode):
PHP-Code:
$menuEntries = getAllEntries();
foreach( $menuEntries as $menuEntry ) {
if( $currentUser->hasRight( $menuEntry->getNeededRights() ) ) {
$menuEntry->show();
}
}
Diese Rechte kannst du im Adminbereich dann schön anzeigen lassen und modifizieren.
Das sieht jetzt vielleicht etwas kompliziert aus, ist aber sehr flexibel und das gängiste Modell. Das wirst du auch nicht komplett neu schreiben müssen, gibt einen Haufen fertiger Klassen dafür!