Thinkphp5中auth权限设置以及实现

下面由thinkphp框架教程栏目给大家介绍thinkphp5中auth权限设置以及实现,希望对需要的朋友有所帮助!

Thinkphp5中auth权限设置以及实现

1.将auth类下载好 放置目录: extendauthauth.php

2.将类中的SQL语句执行,可以在数据库中创建3张表 auth_group(用户组表)           auth_rule(权限规则表)           auth_group_access(用户与用户组关联表)

3.我想给规则 添加一个级别关系(类似于无限极分类)   auth_rule(权限规则表) 中添加3个字段  pid(父级id ,0为顶级权限)   level(级别)    sort(排序),如下图

Thinkphp5中auth权限设置以及实现

立即学习“PHP免费学习笔记(深入)”;

4,首先 自己创建管理员表,比如叫admin表,增删改查 自己去正常设计,group字段为所属用户组

Thinkphp5中auth权限设置以及实现

5.auth_group用户组的 增删改查 也自己去制作一下,id,用户组名称,状态(开启,或者关闭),规则(所对应的是规则表的id)

Thinkphp5中auth权限设置以及实现

6.auth_rule规则表 增删改查 也自己去制作一下,id,name(控制器/方法),title(规则名称 )  status状态(开启,或者关闭),

 Thinkphp5中auth权限设置以及实现

设计师AI工具箱 设计师AI工具箱

最懂设计师的效率提升平台,实现高效设计出图和智能改图,室内设计,毛坯渲染,旧房改造 ,软装设计

设计师AI工具箱 124 查看详情 设计师AI工具箱

7. 在添加用户的时候 给用户选择 所属用户组, uid(对应的是用户id)   group_id(对应的是用户所属用户组的id),这样就关联起来了

Thinkphp5中auth权限设置以及实现

 

8.把会员登陆功能做好,登陆成功设置session(‘id’),将当前登陆会员ID存在session中

9.最关键的的一步,就是使用auth类进行验证,在common.php这个公共页面中 使用

error('请先登陆系统!','login/index');        }        //获得当前页面的控制器 / 方法       $request=Request::instance();       $moudle=$request->module(); //获取当前控制器名称       $con=$request->controller(); //获取当前控制器名称       $action=$request->action();  //获取当前方法名称       $this->assign(array(               'con'=>$con,               'action'=>$action,       ));       $rules=$con.'/'.$action;  //组合  控制器/方法       $auth=new Auth(); //实例化auth类       $notCheck=array('Index/index');  //都可以访问的页面       if(session('uid')!=1){  //不是超级管理员才进行权限判断          if(!in_array($rules,$notCheck)){  // 是否在开放权限里面              if(!$auth->check($rules,session('uid'))){   // 第一个参数  控制/方法   第二个参数:当前登陆会员的id                 $this->error('没有权限','index/index');               };           }        }       }

最终展示;

Thinkphp5中auth权限设置以及实现

Thinkphp5中auth权限设置以及实现

Thinkphp5中auth权限设置以及实现

 

以上就是Thinkphp5中auth权限设置以及实现的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/488049.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月8日 13:57:19
下一篇 2025年11月8日 14:28:31

相关推荐

  • Laravel的Auth模块使用

    本文是基于laravel 5.4 版本的auth模块代码进行分析书写; 模块组成 Auth模块从功能上分为用户认证和权限管理两个部分;从文件组成上,IlluminateAuthPasswords目录下是密码重置或忘记密码处理的小模块,IlluminateAuth是负责用户认证和权限管理的模块,Ill…

    2025年11月27日 PHP框架
    000
  • 一文讲解thinkphp5如何进行异步验证邮箱

    thinkphp框架教程栏目将给大家介绍thinkphp5使用bootstrapvalidator进行异步验证邮箱的方法,希望对需要的朋友有所帮助! TP5使用bootstrapvalidator进行异步验证邮箱 Remusic Remusic – 免费的AI音乐、歌曲生成工具 514 …

    2025年11月27日 PHP框架
    000
  • thinkphp5如何开启错误调试

    thinkphp5如何开启错误调试?方法如下: 方法一、在application下面的配置文件config.php中把调试模式改为true。 相关推荐:《ThinkPHP教程》 立即学习“PHP免费学习笔记(深入)”; 方法二、在应用的ROOT_PATH目录下面定义.env文件,并且定义APP_DE…

    2025年11月25日 PHP框架
    000
  • 详解ThinkPHP5实现极验滑动验证码geetest功能

    下面由thinkphp教程栏目给大家详解thinkphp5实现极验滑动验证码geetest功能,希望对需要的朋友有所帮助! ThinkPHP5实现极验滑动验证码geetest功能 现在很多网站,比如淘宝,京东等都改用使用极验拖动验证码实现登录,这种方式比传统的验证码方式有更好的体验,减少用户输入的错…

    2025年11月25日 PHP框架
    000
  • 解析ThinkPHP5如何引入Go AOP和PHP AOP编程

    ThinkPHP5 引入 Go AOP,PHP AOP编程 项目背景 目前开发的web软件里有这一个功能,php访问api操作数据仓库,刚开始数据仓库小,没发现问题,随着数据越来越多,调用api时常超时(60s)。于是决定采用异步请求,改为60s能返回数据则返回,不能则返回一个异步id,然后轮询是否…

    2025年11月25日 PHP框架
    000
  • thinkphp5是什么

    thinkphp v5.0是一个为api开发而设计的高性能框架——是一个颠覆和重构版本,采用全新的架构思想,引入了很多的php新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对api开发做了大量的优化。  ThinkPHP5是一个全新的里程碑版本,包括路由、日志、异常…

    2025年11月23日
    000
  • thinkphp3和thinkphp5的区别

    thinkphp3和thinkphp5的区别?下面给大家介绍一下两者的不同之处: 一、thinkphp3.2和thinkphp5之间的使用差异 1、过去的单字母函数已完全被替换掉,如下: S=>cache,C=>config,M/D=>model,U=>url,I=>i…

    2025年11月23日
    000
  • thinkphp5多语言怎么切换

    thinkphp5多语言进行切换的步骤: 第一步,在配置文件中开启多语言配置。 第二步,创建多语言目录。 立即学习“PHP免费学习笔记(深入)”; 相关推荐:《ThinkPHP教程》 第三步,编写语言包。 视图代码: 控制器代码: 效果如下: 以上就是thinkphp5多语言怎么切换的详细内容,更多…

    2025年11月23日 PHP框架
    000
  • thinkPHP5如何使用rabbitmq

    thinkPHP5如何使用rabbitmq? 安装好 tp5 的 rabbitmq 扩展后,在项目根目录文件添加文件 rabbitmq.php 引导启动 rabbitmq。 <?phpdefine('APP_PATH', __DIR__ . '/applicati…

    2025年11月23日
    000
  • thinkphp5如何读取配置文件的数据

    首先打开编辑器sublime。 然后找到应用目录下的config文件。 立即学习“PHP免费学习笔记(深入)”; 相关推荐:《ThinkPHP教程》 随便选取一个配置参数,比如我们想要读取配置参数app_namespace。 来到控制器里面。 在控制器里面新建一个方法test2。 在方法里面我们利用…

    2025年11月23日 PHP框架
    000
  • thinkphp5如何套用主题

    thinkphp5套用主题的方法: 配置项: ‘DEFAULT_THEME’=>’default’,//默认主题 ‘THEME_LIST’=>’default,theme’,//主题列表 ‘TMPL_DETECT_THEME’=>true//开启自动侦测模版主题 相关推荐:《Thi…

    2025年11月23日
    000
  • thinkphp5怎么上传图片

    前后台代码对应,前台的代码name对应后台的值,获取到需要上传的信息。 上传流程很简单,接收上传的信息,把数据用move方法传到指定位置,然后成功后回调就可以了,注意步骤: 立即学习“PHP免费学习笔记(深入)”; 相关推荐:《ThinkPHP教程》 自己封装的上传,接收传过来的name值,然后获取…

    2025年11月23日 PHP框架
    000
  • thinkphp5怎么做分页

    其实分页自身的内容也不是很多。不过牵扯到样式的问题感觉挺烦。于是找到了分页类看了一下。把大体的结构说一下。如果有需要修改页面样式的可以自行修改样式。最好提前备份,防止意外。 首先是分页的调用,tp5的调用相对非常容易: $mod = new appindexmodelBlogmsg();$mo = …

    2025年11月23日
    000
  • thinkphp5的优点是什么

    php框架有助于促进快速应用开发,不仅节省时间,有助于建立更稳定的应用,而且,减少了重复代码的开发。 通常认为PHP框架的作用相当于模型,控制器,视图。(mvc) 相关推荐:《ThinkPHP教程》 thinkphp5.0的优点 立即学习“PHP免费学习笔记(深入)”; ①中国人开发,更加符合我们的…

    2025年11月23日
    000
  • ThinkPHP5-使用 think-API 部署 JWT

    因为下一个项目要用 tp5 开发一个小程序,所以就使用到了,tp 框架,因为小程序开发需要后台来编写 api 接口,所以就上网查了一下有没有相关的依赖,在此推荐一下 think-api 扩展工具,因为主要想使用其中的 jwt 功能来判断小程序用户的登录状态,下面就以本人的项目为例,简单和大家聊一下,…

    2025年11月22日
    500
  • thinkphp5支持swoole携程吗

    首先,了解一下thinkphp的运行机制。 TP5运行机制: 任何请求都会经过tp5的入口文件,载入框架的配置文件,启动进程,然后处理请求。 在这个index.php的入口文件中,可以看到,它先定义的APP_PATH这个常量,然后引入的框架的启动文件start.php,那我们就去看下start.ph…

    2025年11月22日 PHP框架
    000
  • thinkphp5支持oracle吗

    首先,我们知道php是完全支持oracle的,那么作为php框架的thinkphp5也是完全可以支持oracle的。 thinkphp5如何连接oracle? 数据库:ray 表的结构:ray_user CREATE TABLE IF NOT EXISTS ray_user (user_id int…

    2025年11月22日
    000
  • thinkphp5有什么用

    thinkphp5有什么用? ThinkPHP5作用 ThinkPHP V5.0是一个为API开发而设计的高性能框架——是一个颠覆和重构版本,采用全新的架构思想,引入了很多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对API开发做了大量的优化。 Think…

    2025年11月22日
    000
  • thinkphp5如何调用云片接口实现发送短信验证码找回密码功能

    下面由thinkphp框架教程栏目给大家介绍thinkphp5如何调用云片接口实现发送短信验证码找回密码功能,希望对需要的朋友有所帮助! 思路: 1、用户输入手机号,请求获取短信验证码。2、thinkphp生成短信验证码,存储,同时和其他参数一起发送请求给云片。3、云片发送短信验证码到指定手机号。4…

    2025年11月17日 PHP框架
    000
  • thinkphp5清除缓存、模版缓存和日志缓存

    下面由thinkphp框架教程栏目给大家介绍thinkphp5清除缓存、模版缓存和日志缓存的方法,希望对需要的朋友有所帮助! 直接写入cache模块中,生成控制器 namespace appcachecontroller;use thinkController;use thinkCache; 具体方…

    2025年11月17日
    100

发表回复

登录后才能评论
关注微信