Registratie met gescheiden rechten in PHP
Bij het toevoegen van gebruikersrechten moeten we
wijzigingen aanbrengen in onze registratie. Nu moeten we bij de registratie
van een gebruiker in de INSERT-query
zijn status opgeven.
Normaal gesproken krijgen alle gebruikers
van onze site bij de initiële registratie de laagste status,
dat wil zeggen in ons geval 'user':
<?php
$query = "INSERT INTO users
SET login='$login', password='$password', 'status'='user'";
?>
Hogere status worden meestal door een beheerder toegekend. Hij ziet in de beheeromgeving een lijst met gebruikers en kan iedereen bijvoorbeeld tot beheerder maken.
Hoe verschijnt dan de eerste beheerder op de site? De eenvoudigste manier: registreer een gewone gebruiker en maak hem via PhpMyAdmin tot beheerder.
Moeilijker: bij de eerste start op de hosting de site-installatie uitvoeren, met behulp van een formulier een login en wachtwoord vragen en de allereerste gebruiker van de site registreren, aan wie de status van beheerder wordt toegekend.
Pas de registratiecode zo aan dat alle toegevoegde
gebruikers de status 'user' krijgen.
Verander handmatig voor een gebruiker
zijn status naar 'admin'. Log in
onder deze gebruiker.
Maak een pagina admin.php, waartoe
alleen gebruikers met de
status 'admin' toegang hebben.
Toon op de pagina admin.php een lijst
van alle geregistreerde gebruikers van uw
site in de vorm van een tabel. Laat de tabel
twee kolommen hebben: login en status.
Pas de vorige taak zo aan dat er nog een derde kolom verschijnt, met een link, waarmee de beheerder elke gebruiker kan verwijderen.
Pas de vorige taak zo aan dat de rijen van de tabel met beheerders rood worden gekleurd en met gewone gebruikers - in groen.
Pas de vorige taak zo aan dat er nog een kolom verschijnt. In deze kolom kan de beheerder de rechten van gebruikers wijzigen. Zorg ervoor dat voor alle gewone gebruikers er een link maak hem beheerder staat, en voor een beheerder - de link maak hem gebruiker.
Zorg ervoor dat op alle pagina's van de site, in de header een geregistreerde gebruiker zijn login en status ziet.
Pas de vorige taak zo aan dat voor beheerders in de header van de site ook een link naar de beheeromgeving wordt getoond.