Piekļuves tiesības PHP
Visbiežāk vietnē ir nevis viens lietotāju veids, bet vairāki, un visiem tiem ir dažādas tiesības. Piemēram, jums var būt parastie lietotāji un administratori. Administratoriem būs vairāk tiesību nekā parastajiem lietotājiem.
Kā tas tiek realizēts: izveidosim
lauku lietotāju tabulā, sauksim to
par status un katram lietotājam
glabāsim viņa statusu: lai administratoriem
būtu vārds 'admin', bet parastajiem lietotājiem
- vārds 'user'.
Tagad, lietotājam autentificējoties, $_SESSION['status']
ierakstīsim lietotāja statusu no datu bāzes:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
$_SESSION['status'] = $user['status']; // ierakstām statusu
}
?>
Pieņemsim, ka mūsu vietnē ir kāda lapa, kurai piekļūt var tikai administratori. Uztaisīsim tā, lai tikai administratori redzētu šīs lapas saturu:
<?php
if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
// rādīsim lapas saturu tikai administratoriem
}
?>