搜索
首页后端开发php教程 分享框架式网站系统的权限处理,尤其针对大型项目和二次开发项目,该如何处理

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


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



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

废话不多说,看例子代码

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><?php class 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
OPPO Find X7 绝绝子!用影像定格你的每一刻OPPO Find X7 绝绝子!用影像定格你的每一刻Aug 07, 2024 pm 07:19 PM

在这个快节奏的时代,OPPOFindX7可以用它的影像力量,让我们去细细品味生活中的每一个美好瞬间。无论是壮丽的山川湖海,还是温馨的家庭聚会,亦或是街头的偶遇与惊喜,它都能以"绝绝子"的画质,帮你记录下来。从外头看,在摄像头Deco的设计上,FindX7与Ultra版如出一辙,采用了同心圆弧的造型,参考了专业相机镜头的全棱线设计,还有经典的哈苏"H"大logo,整体看起来很有辨识度,也很有高级感。而内里也是一绝,首先是基础的硬件配置。FindX7维持了上一

Trezor冷钱包:Model One与Model T的特性和使用指南Trezor冷钱包:Model One与Model T的特性和使用指南Jan 19, 2024 pm 04:12 PM

在许多中心化交易所出现问题后,越来越多的币圈投资者开始将资产转移到冷钱包中,以减少中心化交易所带来的风险。本文将介绍全球最早的冷钱包供应商Trezor,自2014年推出首款冷钱包至今,在全球多个国家销售。Trezor的产品包括2014年推出的ModelOne和2018年推出的进阶版本ModelT。下面将继续介绍这两款产品与其他冷钱包的区别。什么是Trezor冷钱包?2014年,Trezor推出了第一款冷钱包ModelOne。除了常见的BTC、ETH、USDT等币种外,该钱包还支持超过1000种其

OPPO Find X8 Ultra 核心配置曝光!骁龙 8 Gen4+ 超大电池OPPO Find X8 Ultra 核心配置曝光!骁龙 8 Gen4+ 超大电池Aug 22, 2024 pm 06:54 PM

8月22日,有数码博主透露了OPPOFindX8Ultra的一些核心配置信息。根据曝光的内容,这款高端机型将搭载高通最新的骁龙8Gen4移动平台,配备6000mAh超大容量电池,并支持100W有线快充和50W无线快充功能。外观设计目前尚未有关于OPPOFindX8Ultra的具体外观设计信息。但标准版OPPOFindX8的真机图片已经在网络上曝光。FindX8外观从曝光的照片来看,OPPOFindX8的后置摄像头模组采用了方形设计,四个角带有一定的弧度,给人一种更加圆润的感觉。此外,该机采用了直

Python中的字符串查找和替换技巧有哪些?Python中的字符串查找和替换技巧有哪些?Oct 20, 2023 am 11:42 AM

Python中的字符串查找和替换技巧有哪些?(具体代码示例)在Python中,字符串是一种常见的数据类型,我们在日常编程中经常会遇到字符串的查找和替换操作。本文将介绍一些常用的字符串查找和替换技巧,并配以具体的代码示例。查找子串在字符串中查找特定的子串可以使用字符串的find()方法或者index()方法。find()方法返回子串在字符串中第一次出现的位置索

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code<form name="myform"

docker挂载目录权限问题怎么解决docker挂载目录权限问题怎么解决Feb 29, 2024 am 10:04 AM

在Docker中,挂载目录的权限问题通常可以通过以下方法解决:使用-v参数指定挂载目录时添加权限相关的选项。可以通过在挂载的目录后面添加:ro或:rw来指定挂载目录的权限,分别表示只读和读写权限。例如:dockerrun-v/host/path:/container/path:roimage_name在Dockerfile中定义USER指令来指定容器中运行的用户,以确保容器内部的操作符合权限要求。例如:FROMimage_name#CreateanewuserRUNuseradd-ms/bin/

密集爆料,小米 15 Ultra 上高倍率 2 亿像素长焦、K80 Pro 改左上圆形相机、一加 13 用京东方新基材、Find X8 有粉色密集爆料,小米 15 Ultra 上高倍率 2 亿像素长焦、K80 Pro 改左上圆形相机、一加 13 用京东方新基材、Find X8 有粉色Aug 14, 2024 pm 09:56 PM

在传统的暑假"机荒",闲聊站开始了密集爆料,其在8月13日接连放出了OPPOFindX8系列(配色)、RedmiK80Pro(相机造型)、RedmiTurbo4(数据库备案)、一加13(京东方新基材)、小米15Ultra(2亿像素长焦与造型)等若干爆料。我们省流+汇总这批机型的爆料:OPPOFindX8及相关产品OPPOFindX8和X8Pro预计将于11月发布,而FindX8Ultra将于25年一季度发布。天玑9400处理器FindX8接近6.6英寸国产1.5K直屏,高位超

Django框架中的Model详解Django框架中的Model详解Jun 17, 2023 am 08:48 AM

Django是一个开源的Pythonweb框架,它采用了MVT(Model-View-Template)的架构模式,将应用程序分为模型(Model)、视图(View)和模板(Template)三个部分。其中,Model是Django框架中的一个基础组件,用于对数据进行定义和管理。本文将对Django框架中的Model进行详解。什么是Model在Django

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境