Ҳуқуқҳои дастрасӣ дар 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') {
// мундариҷаи саҳифаро фақат ба администраторҳо нишон медиҳем
}
?>