PHP da İzın huquqları
Ko'pincha saytda bir emas, balki bir nechta foydalanuvchi turlari mavjud va ularning barchasining huquqlari har xil. Misol uchun, sizda oddiy foydalanuvchilar va adminlar bo'lishi mumkin. Adminlar oddiy foydalanuvchilarga qaraganda ko'proq huquqlarga ega bo'ladilar.
Buni qanday amalga oshiriladi: foydalanuvchilar jadvalida yana bir maydon yaratamiz,
uni status deb nomlaymiz va har bir foydalanuvchi uchun
uning holatini saqlaymiz: adminlar uchun
'admin' so'zini, oddiy foydalanuvchilar uchun esa
- 'user' so'zini saqlaymiz.
Endi foydalanuvchini avtorizatsiya qilish paytida $_SESSION['status'] ga
ma'lumotlar bazasidan olingan foydalanuvchi holatini yozamiz:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
$_SESSION['status'] = $user['status']; // holatni yozamiz
}
?>
Endi faraz qilaylik, saytimizda faqat adminlar kirish huquqiga ega bo'lgan qandaydir sahifa mavjud. Keling, bu sahifaning kontentini faqat adminlar ko'rishi uchun qilaylik:
<?php
if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
// sahifa kontentini faqat adminlarga ko'rsatamiz
}
?>