Php Codeigniter管理用户角色
如何划分多个用户的访问权限?我第一次为3类用户创建了不同的仪表板,例如管理员重定向到Php Codeigniter管理用户角色,php,mysql,codeigniter,Php,Mysql,Codeigniter,如何划分多个用户的访问权限?我第一次为3类用户创建了不同的仪表板,例如管理员重定向到user/admin/dashboard,版主重定向到user/版主/dashboard,等等。但是我想通过了解用户角色和管理他们的访问来找到一种简单的方法来实现这一点。 我的用户表看起来像: mysql: - 一旦我使用drupal,它就完美了,我希望它看起来像那样,而不是完全像那样。使用这个类 观看此内容以了解其实际操作。我通常使用一个单独的表来定义用户访问权限。假设它的名字是tbl_acces,它有两列:u
user/admin/dashboard
,版主重定向到user/版主/dashboard
,等等。但是我想通过了解用户角色和管理他们的访问来找到一种简单的方法来实现这一点。
我的用户表看起来像:
mysql:
-
一旦我使用drupal,它就完美了,我希望它看起来像那样,而不是完全像那样。使用这个类
观看此内容以了解其实际操作。我通常使用一个单独的表来定义用户访问权限。假设它的名字是tbl_acces,它有两列:usr_typ_id和menu_id
菜单id可以是控制器中的页面或函数。所以,如果用户通过URL访问控制器中的某个函数,它将检查用户是否有权访问该页面/菜单。那么您的问题是什么?看起来您已经引用了他们的用户类型外键。不要创建不同的仪表板,只需保持简单并限制在控制器中的访问,当您添加新内容或稍后进行更改时,您的工作量会减少,这是在1个位置对3个不同位置完成的。视频链接不起作用,似乎视频不再可用
CREATE TABLE IF NOT EXISTS `users` (
`user_id` int(9) NOT NULL AUTO_INCREMENT,
`email_add` varchar(35) COLLATE utf8_bin DEFAULT NULL,
`password` varchar(128) COLLATE utf8_bin NOT NULL,
`last_login` datetime NOT NULL,
`usr_typ_id` int(4) DEFAULT NULL,
`permissions` varchar(50) COLLATE utf8_bin DEFAULT NULL,
PRIMARY KEY (`user_id`),
UNIQUE KEY `email_add` (`email_add`),
KEY `fk_usr_typ_id` (`usr_typ_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=92090005 ;
ALTER TABLE `users`
ADD CONSTRAINT `fk_usr_typ_id` FOREIGN KEY (`usr_typ_id`) REFERENCES `user_type` (`type_id`);