Registrierung mit Benutzerrechte-Trennung in PHP
Bei der Einführung von Benutzerrechten müssen wir
Anpassungen an unserer Registrierung vornehmen.
Nun müssen wir in der INSERT-Abfrage beim
Registrieren eines Benutzers dessen Status angeben.
Normalerweise erhalten alle Benutzer unserer Website
bei der erstmaligen Registrierung den niedrigsten Status,
in unserem Fall also 'user':
<?php
$query = "INSERT INTO users
SET login='$login', password='$password', 'status'='user'";
?>
Höhere Status vergibt normalerweise ein Administrator. Er sieht in der Admin-Oberfläche eine Liste der Benutzer und kann jeden beispielsweise zum Administrator machen.
Wie erscheint dann der erste Administrator auf der Website? Die einfachste Methode: Einen normalen Benutzer registrieren und ihn über PhpMyAdmin zum Admin machen.
Eine komplexere Methode: Bei der ersten Installation auf dem Hosting eine Website-Installation ausführen, mit einem Formular nach Login und Passwort fragen und den allerersten Benutzer der Website registrieren, dem der Admin-Status zugewiesen wird.
Ändern Sie den Registrierungscode so, dass alle hinzugefügten
Benutzer den Status 'user' erhalten.
Ändern Sie manuell für einen beliebigen Benutzer
dessen Status auf 'admin'. Melden Sie sich
unter diesem Benutzer an.
Erstellen Sie eine Seite admin.php, auf die
nur Benutzer mit dem Status 'admin' Zugriff haben.
Geben Sie auf der Seite admin.php eine Liste
aller registrierten Benutzer Ihrer Website in Form
einer Tabelle aus. Die Tabelle soll zwei Spalten haben: Login und Status.
Modifizieren Sie die vorherige Aufgabe so, dass eine dritte Spalte hinzukommt, mit einem Link, über den der Admin jeden Benutzer löschen kann.
Modifizieren Sie die vorherige Aufgabe so, dass sich die Tabellenzeilen der Admins rot einfärben und die der normalen Benutzer grün.
Modifizieren Sie die vorherige Aufgabe so, dass noch eine weitere Spalte erscheint. In dieser Spalte kann der Admin die Berechtigungen der Benutzer ändern. Sorgen Sie dafür, dass für alle normalen Benutzer dort der Link zum Admin machen steht, und für Admins - der Link zum Benutzer machen.
Sorgen Sie dafür, dass auf allen Seiten der Website im Header ein angemeldeter Benutzer seinen Login und Status sieht.
Modifizieren Sie die vorherige Aufgabe so, dass für Admins im Header der Website zusätzlich ein Link zur Admin-Oberfläche angezeigt wird.