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') {
// бет мазмұнын тек әкімшілерге көрсетеміз
}
?>