2
在初始化SESSION數據並定義變量$ auth_level後,我在我的所有頁面上使用下面的代碼。這是安全使用。用戶級別管理
我用它來決定顯示不同級別的用戶。
<?php
if($auth_level == 'basic'){
// auth_level basic
if (!isset($_SESSION['username'])) {
header('Location: login.php');
}
} else if ($auth_level == 'admin'){
// auth level admin
if (!isset($_SESSION['username']) || $_SESSION['role'] != 2) {
header('Location: login.php');
}
} else {
// auth level admin assumed for security
if (!isset($_SESSION['username']) || $_SESSION['role'] != 2) {
header('Location: login.php');
}
}
?>
如果你不在'header('Location:...)'之後放一個'exit','腳本不會停在那個點。順便說一句,這是offtopic,因爲http://codereview.stackexchange.com/ – DanFromGermany
我可能還沒有足夠的咖啡......但它看起來像你的檢查認證級別,然後檢查,看看用戶名是否設置在auth_level == '基本'塊。你應該先檢查用戶名嗎? –
爲什麼說「如果'$ auth_level'是」admin「,那麼這樣做,但如果它是其他東西,那麼做的完全一樣嗎?爲什麼不簡單地做'if(basic){} else {}'? – h2ooooooo