Права за пристап на PHP
Најчесто на веб-страната не постои еден тип на корисници, туку неколку и сите тие имаат различни права. На пример, може да имате обични корисници и администратори. Администраторите ќе имаат повеќе права, отколку обичните корисници.
Како се имплементира ова: ќе создадеме во
табелата со корисници уште едно поле, ќе го наречеме
status и за секој корисник
ќе го чуваме неговиот статус: нека за администраторите
зборот 'admin', а за обичните корисници
- зборот 'user'.
Сега при авторизација на корисникот во $_SESSION['status']
ќе го запишеме статусот на корисникот од базата на податоци:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
$_SESSION['status'] = $user['status']; // го запишуваме статусот
}
?>
Нека сега на нашата веб-страна постои некоја страница, до која имаат пристап само администраторите. Ќе направиме така што само администраторите ќе ја видат содржината на оваа страница:
<?php
if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
// ќе ја прикажеме содржината на страницата само на администраторите
}
?>