如下为function的代码
function check_user_rule($url){
$user = session(C('ADMIN_USER_ID'));
$uid=$user['uid'];//当前登录的用户id
//(2)判断是否是超级管理员
if($uid==C('ADMINISTRATOR')){
return true;
}
//(3)判断结点权限
$auth_list=array();
$where = array(
'uid' => $uid
);
//查询到分组id
$group_id = M('group_access')->where($where)->getField('group_id');
if($group_id){
$where = array(
'id' => $group_id,
'status' => 1
);
//查询拥有该组权限的id字符串
$rulesStr = M('group')->where($where)->getField('rules');
//将字符串转为数组
$authID = explode(',',$rulesStr);
if($authID['0'] == 0){/** 本行为我的程序带的可以无视**/
unset($authID[0]);
}
$where = array(
'id' => array('in',$rulesStr)
);
//查询所有规则
$urlList = M('auth_cate')->where($where)->getField('name',true);
}else{
return false;
}
//判断规则
if(in_array($url,$urlList)){
return true;
}else{
return false;
}
}如下为模板里面的代码,如果有权限则显示,没有权限则无法点击<if condition="check_user_rule('Admin/usergroup')">
<a href="{:U('usergroup',array('id'=>$vo['id']))}" >分组</a>
<else/>
<a style="color:#999">分组</a>
</if>如下为效果图:
最佳答案