Hak Akses pada PHP
Seringkali di sebuah website tidak hanya ada satu jenis pengguna, tapi beberapa dan semuanya memiliki hak yang berbeda. Misalnya, Anda mungkin memiliki pengguna biasa dan admin. Admin akan memiliki lebih banyak hak, dibandingkan pengguna biasa.
Bagaimana cara mengimplementasikannya: kita akan buat di
tabel pengguna satu field lagi, sebut saja
status dan untuk setiap pengguna
kita akan menyimpan statusnya: misalnya untuk administrator
kata 'admin', dan untuk pengguna biasa
- kata 'user'.
Sekarang saat otorisasi pengguna, ke dalam $_SESSION['status']
kita akan tulis status pengguna dari database:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
$_SESSION['status'] = $user['status']; // menulis status
}
?>
Sekarang misalkan di website kita ada sebuah halaman, yang hanya dapat diakses oleh admin. Mari kita buat agar hanya admin yang bisa melihat konten halaman ini:
<?php
if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
// tampilkan konten halaman hanya untuk admin
}
?>