【问题标题】:How to create permisison based on user group in codeigniter?如何在codeigniter中根据用户组创建权限?
【发布时间】:2015-05-14 10:13:10
【问题描述】:

我正在使用 codeigniter ion 身份验证进行用户组维护

Here's ion 认证文档链接

在编辑用户组中,我想添加菜单以单独访问特定组。如何设计一个mysql表并在我们的控制器中访问它并查看页面以根据用户组限制页面。 请看下图

【问题讨论】:

    标签: php mysql codeigniter authorization


    【解决方案1】:

    我已经分别创建了菜单表和菜单权限表。

    menu table
       menu id
        menu name
    menu permission table
     id 
    menuid 
    usergroup_id
    

    检查当前登录的用户组id是否在菜单权限表中可用

    public function get_menus($user_group_id) {
        if ($user_group_id == 1) {
            $query = $this->db->query("SELECT * FROM menus where parent_id=0");
            $get_results = $query->result();
        } else {
            $query = $this->db->query("SELECT * FROM menu_permissions where user_group_id = $user_group_id");
            $get_results = $query->result();
            $user_perm = array();
            foreach($get_results as $key=> $get_perm){
                // echo $get_results[$key]->menu_id;
                ////print '<pre>';
                $user_perm[] = $get_results[$key]->menu_id;
            }
            $user_perm = implode(', ', $user_perm);
            $query = $this->db->query("SELECT * FROM menus WHERE id IN (".$user_perm.")");
            $get_results = $query->result();
        } 
        //print_r($get_results);
        /*$user_perm = array();
        foreach($get_results as $key=> $get_perm){
            // echo $get_results[$key]->menu_id;
            ////print '<pre>';
    
             $user_perm[] = $get_results[$key]->menu_id;
         }*/
         return $get_results;
    }
    

    【讨论】:

      猜你喜欢
      • 2015-10-17
      • 1970-01-01
      • 2013-09-18
      • 1970-01-01
      • 2021-02-02
      • 2018-09-05
      • 1970-01-01
      • 1970-01-01
      • 2019-01-24
      相关资源
      最近更新 更多