我们准备了两个栏目来对此进行处理。
角色管理和员工管理。
角色管理:此功能相当于权限组
表结构如下:
CREATE TABLE `admin_role` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增编号',
`name` varchar(32) NOT NULL DEFAULT '' COMMENT '角色名称',
`desc` varchar(255) NOT NULL DEFAULT '' COMMENT '角色描述',
`permission` varchar(1000) NOT NULL DEFAULT '' COMMENT '权限',
PRIMARY KEY (`id`),
UNIQUE KEY `role_name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=34 DEFAULT CHARSET=utf8 COMMENT='后台角色表';
员工管理:
CREATE TABLE `staff` (
`number` int(6) unsigned NOT NULL DEFAULT '0' COMMENT '工号',
`password` varchar(32) NOT NULL COMMENT '密码',
`name` varchar(20) NOT NULL COMMENT '姓名',
`role` varchar(255) NOT NULL DEFAULT '' COMMENT '角色',
`permission` varchar(1000) NOT NULL DEFAULT '' COMMENT '权限',
PRIMARY KEY (`number`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='员工表'
在角色表中记录权限的数组为permission,
如果员工的角色为一个,则拥有这个的权限。
另外,针对有的人有特殊权限,可以不用角色组来处理,在用户表中permission记录这个人单独的权限.
分配角色的代码
<div class="m1title">
<span class="checkAll">全选</span>
<span class="unCheckAll">全不选</span>
</div>
<div class="m1">
<ul>
<?php foreach($roles as $role):?>
<li>
<input type="checkbox" name="role[]" value="<?php echo $role->id?>" class="check">
<?php echo $role->name?>
</li>
<?php endforeach;?>
</ul>
<div class="clear"></div>
</div>
<script type="text/javascript">
$(function(){
$('.checkAll').click(function(){
$('.check').attr('checked',true);
})
$('.unCheckAll').click(function(){
$('.check').attr('checked',false);
});
})
</script>