我是这个论坛的新手,最近我刚刚创建了网络应用来管理股票等等。 (抱歉我的英语不好)
我只是考虑是否必须为非管理员用户制作不同的菜单。这是管理员的菜单
我需要删除注册用户的主菜单和设置菜单。 我可以通过使用会话来制作吗?
答案 0 :(得分:1)
通过询问授权组件,允许不同的人做不同的事情。 CodeIgniter没有自己的授权组件。你必须在其他地方找一个。
会话不会直接帮助。会话知道哪个用户正在使用该应用程序;必须将该信息传递给授权组件,以确定是否允许用户访问为管理员保留的页面。
答案 1 :(得分:0)
您可以在模板中显示菜单之前检查会话
前
$this->c_type = $this->CI->session->userdata('logtype');
$menubar ='';
if($this->c_type == 'Admin')
{
$menubar = $this->CI->load->view('admin/menubar', $data, true);
}
else
{
$menubar = $this->CI->load->view('general/menubar', $data, true);
}
答案 2 :(得分:0)
您可以通过以下
获取user_id $user_id=$this->session->userdata('user_id');
if($user_id ==1){ // I considered admin user_id =1
echo "admin menu";
}
else{
echo "user menu";
}
答案 3 :(得分:0)
这是我的main.php代码
class Main extends CI_Controller {
function __construct() { parent::__construct(); if(!$this->session->userdata('logged_in')) { redirect(site_url('login').'?u='.uri_string(), 'refresh'); } $this->data['title'] = 'Home'; $this->data['active'] = 'home'; $this->data['menu'] = array('home','keuangan','penjualan','pembelian','stok','master','setting'); } function index() { $data['title'] = 'Main'; $this->load->view('common/header',$this->data); $this->load->view('common/footer'); }
}