Adgangsrettigheder i PHP
Som oftest er der ikke kun én type brugere på et websted, men flere, og de har alle forskellige rettigheder. For eksempel kan du have almindelige brugere og administratorer. Administratorer vil have flere rettigheder end almindelige brugere.
Hvordan dette implementeres: lad os oprette et ekstra felt i
tabellen med brugere, lad os kalde det
status og for hver bruger
vil vi gemme deres status: lad for administratorer
være ordet 'admin', og for almindelige brugere
- ordet 'user'.
Nu ved brugerens godkendelse i $_SESSION['status']
skriver vi brugerens status fra databasen:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
$_SESSION['status'] = $user['status']; // skriver status
}
?>
Lad os nu sige, at vi har en side på webstedet, som kun administratorer har adgang til. Lad os sørge for, at kun administratorer kan se indholdet på denne side:
<?php
if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
// viser sideindholdet kun til administratorer
}
?>