ホームページ  >  記事  >  バックエンド開発  >  分享框架式网站系统的权限处理,尤其针对大型项目和二次开发项目,该如何处理

分享框架式网站系统的权限处理,尤其针对大型项目和二次开发项目,该如何处理

WBOY
WBOYオリジナル
2016-06-13 10:26:521115ブラウズ

分享框架式网站系统的权限处理,尤其针对大型项目和二次开发项目


user表就是用户表了,可以存储上万条的用户也没关系,后面的groupid 为1 就是管理员权限,为2就是游客权限



model表存储框架的各个方法名,后面的group是set集合类型,代表哪个组拥有这个权限

废话不多说,看例子代码

PHP code
<!--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 "没有权限";             }         }}?>




欢迎参考。。。

------解决方案--------------------
model表需要加上model名,不然无法区分不同model的同名方法
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。