我們準備了兩個欄目來對此進行處理。
角色管理和員工管理。
角色管理:此功能相當於權限組
表結構如下:
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>