PHP-de ygtyýarlyk hukuklary
Köp halatlarda sahypada bir tip ulanyjy däl, birnäçesi bar we olaryň hemmesiniň dürli hukuklary bar. Mysal üçin, sizde adaty ulanyjylar we administratorlar bolup bilýär. Administratorlar adaty ulanyjylardan has köp hukuklara ege bolýarlar.
Bu nähili amala aşyrylýar: ulanyjylar tablisasyna
ýene bir meýdan goşuň, ony
status diýip atlandyryň we her bir ulanyjy üçin
onuň statusyny saklaýarys: administratorlar üçin
'admin' sözüni, adaty ulanyjylar üçin bolsa
- 'user' sözüni.
Indi ulanyjynyň şahsyýetini kesgitleme wagtynda $_SESSION['status']
içine maglumatlar bazasyndan alynan ulanyjynyň statusyny ýazýarys:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
$_SESSION['status'] = $user['status']; // statusy ýazýarys
}
?>
Indi diýeliň sahypamyzda käbir sahypa bar, oňa diňe administratorlar girip bilýär. Bu sahypanyň mazmunyny diňe administratorlar görüp biljek etmek üçin şeýle edeliň:
<?php
if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
// sahypanyň mazmununy diňe administratorlara görkezeris
}
?>