PHP да рухсат ҳуқуқлари
Кўпинча веб-сайтда бир турдаги фойдаланувчилар эмас, бир неча турдаги фойдаланувчилар бўлиб, уларнинг ҳаммаси турли ҳуқуқларга эга. Масалан, сизда оддий фойдаланувчилар ва администраторлар бўлиши мумкин. Администраторлар оддий фойдаланувчиларга нисбатан кўпроқ ҳуқуқларга эга бўлади.
Бу қандай амалга оширилади: фойдаланувчилар жадвалида яна бир майdon яратамиз,
уни 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') {
// саҳифа контентини фақат администраторларга кўрсатамиз
}
?>