我正在使用codeigniter ion authentication进行用户组维护
Here's链接验证离子验证文档
在编辑用户组中,我想添加菜单以便仅访问特定组。如何设计一个mysql表并在我们的控制器和视图页面中访问它以限制基于用户组的页面。 请查看下面的图片
答案 0 :(得分: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;
}