现在的位置: 首页 > 综合 > 正文

用户权限系统的设计

2013年08月28日 ⁄ 综合 ⁄ 共 1400字 ⁄ 字号 评论关闭

我们准备了两个栏目来对此进行处理。

角色管理和员工管理。

角色管理:此功能相当于权限组

表结构如下:

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>

抱歉!评论已关闭.