分享框架式网站系统的权限处理,尤其针对大型项目和二次开发项目
user表就是用户表了,可以存储上万条的用户也没关系,后面的groupid 为1 就是管理员权限,为2就是游客权限
model表存储框架的各个方法名,后面的group是set集合类型,代表哪个组拥有这个权限
废话不多说,看例子代码
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?phpclass IndexAction extends YouYaX{ public function index() { header("Content-type: text/html; charset=utf-8"); //登陆的步骤省略 $user="我是游客"; //$user="我是管理员"; $data=$this->find("user","string","user='".$user."'"); $group_tmp=$data["groupid"]; $this->show($group_tmp); } public function show($group_tmp){ $list=$this->find("model","string","func='show'"); $sql="select * from model where func='show' and find_in_set(".$group_tmp.",".$list['group'].")"; if(mysql_num_rows(mysql_query($sql))){ echo "权限通过"; //处理下面的内容 }else{ echo "没有权限"; } } public function showAll($group_tmp){ $list=$this->find("model","string","func='showAll'"); $sql="select * from model where func='showAll' and find_in_set(".$group_tmp.",".$list['group'].")"; if(mysql_num_rows(mysql_query($sql))){ echo "权限通过"; //处理下面的内容 }else{ echo "没有权限"; } }}?>