ThinkPHP:根据不同权限显示不同内容,该如何实现呢?

发布网友 发布时间:2022-04-06 05:56

我来回答

2个回答

热心网友 时间:2022-04-06 07:26

你说的这个问题就是thinkphp中的Rbac用户权限问题,需要在数据库中建立多张表来实现(这是最重要的一步)。先来说一下总的思路:
首先、用户登陆时候验证用户存在之后把用户的id存入session之中,之后在common类(这个类是继承的action类,之后其他要用到权
限的类来继承common类)中,使用_initialize()方法(继承这个类的首先都要初始化这个方法,通过这个方法,可以达到用户权限的判断)。
之后、读取所用的节点,并且根据用户的id读取出用户所属组(role),之后再根据用户组取出权限表中的节点,最后用in_array()来判断用户是否有这个节点(栏目)如果有则显示(读取出来的节点),没有则unset()方法
删除。这样实现了,比较简单的方法是使用官方的类库解决!
下面再补充几个重要的步骤:
建表:到thinkphp中的ORG/Util/RBAC.class.php中之后里面有建数据库表的代码(文件开头部分就有)。有四个表(节点表(node),用户所属组表(role),权限表(acces),用户角色表(role_user))。创建四张表但是‘用户表’要自己建(总共有五张表),最后添加数据就是了。
可能说的很空洞,最好的还是去官网看点视频之后在看这个,或者相关的说明就懂了。说的不是很清楚,但是希望能给你指导一个方向吧。也为了能帮到更多初学者和鼓励自己学习更多来帮助到更多的人,我也开通了百度空间(地址:hi.baidu.com/flyxiangshang)。也希望大家能多多支持。很多事情不是你做不做,最重要的是你能坚持多久。向上吧!

热心网友 时间:2022-04-06 08:44

php支持与html相互套嵌,,在数据库中创建一个字段,来判断,,比如1可以,,2不可以。。就好了,,,,但是在这种MVC思想当中,,也是调用模板。不建议套嵌使用

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com