PHP의 권한
웹사이트에는 종종 한 유형의 사용자가 아닌 여러 유형이 있으며, 모두 서로 다른 권한을 가지고 있습니다. 예를 들어, 일반 사용자와 관리자가 있을 수 있습니다. 관리자는 일반 사용자보다 더 많은 권한을 가집니다.
이를 구현하는 방법: 사용자 테이블에 또 다른 필드를 생성하고,
그것을 status라고 부르며 각 사용자에 대해
그의 상태를 저장합니다: 관리자에게는
단어 'admin', 일반 사용자에게는
- 단어 'user'를 사용합니다.
이제 사용자가 인증될 때 $_SESSION['status']에
데이터베이스에서 가져온 사용자 상태를 기록합니다:
<?php
if (password_verify($_POST['password'], $hash)) {
$_SESSION['auth'] = true;
$_SESSION['id'] = $user['id'];
$_SESSION['status'] = $user['status']; // 상태를 기록합니다
}
?>
이제 웹사이트에 관리자만 접근할 수 있는 어떤 페이지가 있다고 가정해 봅시다. 관리자만 이 페이지의 콘텐츠를 볼 수 있도록 만들어 봅시다:
<?php
if (!empty($_SESSION['auth']) and $_SESSION['status'] === 'admin') {
// 관리자에게만 페이지 콘텐츠를 표시합니다
}
?>