PHP-də icazə hüquqları

Çox zaman saytda bir növ istifadəçi yox, bir neçə olur və hamısının müxtəlif hüquqları var. Məsələn, adi istifadəçilər və adminlər ola bilər. Adminlər adi istifadəçilərdən daha çox hüquqa malik olacaqlar.

Bunu necə həyata keçiririk: istifadəçilər cədvəlində başqa bir sahə yaradaq, ona status adını verək və hər bir istifadəçi üçün onun statusunu saxlayaq: adminlər üçün 'admin' sözü, adi istifadəçilər üçün isə - 'user' sözü olsun.

İndi istifadəçinin avtorizasiyası zamanı $_SESSION['status'] daxilində verilənlər bazasından gələn istifadəçi statusunu yazaq:

html<?php
  if (password_verify($_POST['password'], $hash)) {
    $_SESSION['auth'] = true;
    $_SESSION['id'] = $user['id'];
    $_SESSION['status'] = $user['status']; // statusu yazırıq
  }
?>

Təsəvvür edək ki, saytımızda indi birtəhər səhifə var ki, ona yalnız adminlər daxil ola bilər. Gəlin elə edək ki, bu səhifənin kontentini yalnız adminlər görə bilsin:

html<?php
  if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
    // səhifə kontentini yalnız adminlərə göstəririk
  }
?>