Práva prístupu v PHP
Najčastejšie na stránke nie je jeden typ používateľov, ale niekoľko a všetci majú rôzne práva. Napríklad, môžete mať bežných používateľov a adminov. Admini budú mať viac práv ako bežní používatelia.
Ako sa to implementuje: vytvoríme v
tabuľke s používateľmi ešte jedno pole, nazveme
ho status a pre každého používateľa
budeme ukladať jeho status: nech pre administrátorov
slovo 'admin', a pre bežných používateľov
- slovo 'user'.
Teraz pri autorizácii používateľa do $_SESSION['status']
zapíšeme status používateľa z databázy:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
$_SESSION['status'] = $user['status']; // zapíšeme status
}
?>
Nech teraz máme na stránke nejakú stránku, ku ktorej majú prístup len admini. Urobme tak, aby len admini videli obsah tejto stránky:
<?php
if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
// zobrazíme obsah stránky len adminom
}
?>