php 后台权限例子 (mysql 数据表)

说明   超级管理员的权限最高   可以操作所有的功能   !!!      超级管理员给特定的用户分配对应的权限

下文注解:   用户表 关联 用户组表  每个用户组对应特定的功能权限    !!

用户表

CREATE TABLE `osa_user` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`user_name` varchar(50) NOT NULL,
`password` varchar(255) NOT NULL,
`real_name` varchar(255) NOT NULL,
`mobile` varchar(20) NOT NULL,
`email` varchar(255) NOT NULL,
`user_desc` varchar(255) DEFAULT NULL,
`login_time` int(11) DEFAULT NULL COMMENT '登录时间',
`status` tinyint(4) NOT NULL DEFAULT '1',
`login_ip` varchar(32) DEFAULT NULL,
`user_group` int(11) NOT NULL,       #对应的用户组
`template` varchar(32) NOT NULL DEFAULT 'default' COMMENT '主题模板',
`shortcuts` text COMMENT '快捷菜单',
`show_quicknote` int(11) NOT NULL DEFAULT '1' COMMENT '是否显示quicknote',
PRIMARY KEY (`user_id`),
UNIQUE KEY `user_name` (`user_name`)
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COMMENT='后台用户'

用户组

CREATE TABLE `osa_user_group` (
`group_id` int(11) NOT NULL AUTO_INCREMENT,
`group_name` varchar(32) DEFAULT NULL,
`group_role` text CHARACTER SET utf8 COLLATE utf8_unicode_ci COMMENT '初始权限为1,5,17,18,22,23,24,25',   #用户组对应的功能列表
`owner_id` int(11) DEFAULT NULL COMMENT '创建人ID',
`group_desc` varchar(64) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`group_id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='账号组'

用户组下的功能

CREATE TABLE `osa_menu_url` (
`menu_id` int(11) NOT NULL AUTO_INCREMENT,
`menu_name` varchar(50) NOT NULL,
`menu_url` varchar(255) NOT NULL,
`module_id` int(11) NOT NULL,
`is_show` tinyint(4) NOT NULL COMMENT '是否在sidebar里出现',
`online` int(11) NOT NULL DEFAULT '1' COMMENT '在线状态,还是下线状态,即可用,不可用。',
`shortcut_allowed` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '是否允许快捷访问',
`menu_desc` varchar(255) DEFAULT NULL,
`father_menu` int(11) NOT NULL DEFAULT '0' COMMENT '上一级菜单',
PRIMARY KEY (`menu_id`),
UNIQUE KEY `menu_url` (`menu_url`)
) ENGINE=InnoDB AUTO_INCREMENT=104 DEFAULT CHARSET=utf8 COMMENT='功能链接(菜单链接)'

上一篇:CDialogBar中按钮为灰色不可用的解决办法


下一篇:aswing学习笔记4-通过调用面板中的按钮实现主界面动态切换皮肤的问题!