拒绝未经授权的用户访问 URL/视图



有没有办法拒绝某些用户(例如,允许管理员和拒绝普通用户(访问特定的网址/视图?

我正在这样做:

<?php if($this->session->userdata('level')==='1'):?>
<h1>Hi!!!!</h1>
<p>You can access!!</p>
<?php elseif($this->session->userdata('level')==='2'):?>
<h1>Level 2, access denied</h1>
<?php else:?>
<h1>Level 3, access denied</h1>
<?php endif;?>

但我更喜欢不允许加载页面,例如,不允许他们访问此 url:http://localhost/login/page/posts

您需要从控制器加载不同的页面,具体取决于用户的会话级别:

您的示例网址细分为:

http://localhost/login/page/posts
/controller/function/parameter

所以在你的控制器登录.php:

function page($page){
$data['msg']='you need to login to access this page';
if($page=='posts' && $this->session->userdata('level')==='2'){
$this->load->view('posts'); // loads posts.php
}else{
$this->load->view('login', $data);  // loads login.php, you can display $msg
}
}

最新更新