Thinkphp3.2 cms之角色开发
一、角色管理开发
<?php namespace Admin\Controller;
use Think\Controller; class SystemController extends CommonController{ public function Role_Index(){
$Role_list=D('role')->select();
$this->assign('Role_list',$Role_list);
$this->display("role");
} /***
* 角色添加
*/
public function Role_Add(){
$data['r_name']=I('post.r_name','','htmlspecialchars');
$data['r_pid']=I('post.r_name','0','htmlspecialchars'); $Role_add=D('role')->add($data); if(isset($Role_add)){
$this->success("添加成功");
}else{
$this->error("添加失败");
}
} /**
* @param int $id
* 删除角色
*/
public function Role_Del($id=0){ $r_del=D('role')->where(array('r_id'=>$id))->delete();
if(isset($r_del)){
$this->success("删除成功");
}else{
$this->error("删除失败");
}
} public function Role_Update($id=0){
if(IS_POST) {
$data['r_name'] = I('post.r_name', '', 'htmlspecialchars');
$data['r_pid'] = I('post.r_name', '0', 'htmlspecialchars');
$r_save = D('role')->where(array('r_id' => I('post.id')))->save($data);
if(isset($r_save)){
$this->success("修改成功");
}else{
$this->error("修改失败");
} }else{
$role_update=D('role')->where(array('r_id'=>$id))->find();
$this->assign('role_update',$role_update);
$this->display('RoleEdit');
} } /**
* 权限管理
*/
public function Auth_Index(){
$Auth_node=D('node')->select();
$this->assign('auth_node',$Auth_node);
$this->display('auth');
} /**
* 权限添加
*/ public function Auth_Add(){ $data=$this->Auth_Data();
$auth_add=D('node')->add($data);
if($auth_add){
$this->success("添加成功");
}else{
$this->error("添加失败");
} } public function Auth_Data(){
$data['n_name']=I('post.n_name','','htmlspecialchars');
$data['n_g']=ucfirst(I('post.n_g','','htmlspecialchars'));
$data['n_m']=ucfirst(I('post.n_m','','htmlspecialchars'));
$data['n_a']=ucfirst(I('post.n_a','','htmlspecialchars'));
$data['n_pid']=I('post.n_pid');
$data['n_sort']=I('post.n_sort'); return $data; } /**
* 角色权限设置
*/
public function AuthRole_Setting($id=0){
$Auth_node=D('node')->select();
$Role_list=D('role')->where(array('r_id'=>$id))->find();
$Node_Access=M('node_access')->where(array('r_id'=>$id))->find();
$this->assign('auth_node',$Auth_node);
$this->assign('role_list',$Role_list);
$this->assign('node_access',$Node_Access);
$this->display('AuthSetting');
} /**
* 角色权限添加
*/
public function AuthRoleSetting_Add(){
$data['r_id']=I('post.r_id');
$n_id=I('post.new_rules');
$data['n_id'] = implode(',', $n_id);
$Node_role_find=D('node_access')->where(array('r_id'=>$data['r_id']))->find();
$Node_role_access=empty($Node_role_find)?D('node_access')->add($data):D('node_access')->where(array('r_id'=>$data['r_id']))->save($data);
if($Node_role_access!=false){
$this->success("配置成功");
}else{
$this->error("配置失败");
} } /**
* 权限的删除
*/
public function Auth_Del($id=0){
$auth_del=M('node')->where(array('n_id'=>$id))->delete();
} /**
* 权限修改
*/
public function Auth_SaveIndex()
{
$this->display("authsave"); } /**
* 测试
*/
// public function disubs(){
// $data=D('node')->field('n_id,n_name')->where('n_pid=0')->select();
// foreach($data as $k=>$v){
// $data[$k]['sub']=D('node')->field('n_id,n_name')->where('n_pid='.$v['n_id'])->select();
// }
// var_dump($data);
//
// } public function User_Index(){
$Role_list=D('role')->select(); //角色id
$User_list=M('login')->select(); //用户id
$Role_user=M('role_user')->select(); //角色和用户共同id
foreach($User_list as $k=>$v){
$role=M('role_user')->where(array('user_id'=>$v['uid']))->join('m_role on m_role_user.role_id=m_role.r_id')->select();
$User_list[$k]['role_name']=$role[0]['r_name'];
}
$this->assign('role_list',$Role_list);
$this->assign('user_list',$User_list);
$this->assign('role_user',$Role_user);
$this->display("UserIndex"); } public function User_Data(){
$data['uname']=I('post.uname','','htmlspecialchars');
$data['upasswd']=I('post.upasswd','','htmlspecialchars');
$data['state']=I('post.state','0','htmlspecialchars'); return $data;
} public function User_Add(){ if(IS_POST){
$data=$this->User_Data();
$User_Add=M('login')->add($data);
if($User_Add){
$role['role_id']= I('post.role_id');
$role['user_id']=$User_Add;
M('role_user')->add($role);
$this->success("添加成功");
}
}
} public function User_Del($id=0){
$User_del=M('login')->where(array('uid'=>I('get.uid')))->delete(); if($User_del){
$this->success("删除成功");
}else{
$this->error("删除失败");
}
} public function ceshi(){
$User_list=M('login')->select(); //用户id
foreach($User_list as $k=>$v){
$role=M('role_user')->where(array('user_id'=>$v['uid']))->join('m_role on m_role_user.role_id=m_role.r_id')->select();
$User_list[$k]['role_name']=$role[0]['r_name'];
}
$this->admin=M('node_access')->where(array('r_id'=>2))->find();
foreach($this->admin as $val){
$map=explode(",",$val);
} for($i=0;$i<count($map);$i++)
{
$menu[]=D('node')->where(array("n_id"=>$map[$i]))->select(); } } }
Thinkphp3.2 cms之角色开发的更多相关文章
- 简易版CMS后台管理系统开发流程
目录 简易版CMS后台管理系统开发流程 MVC5+EF6 简易版CMS(非接口) 第一章:新建项目 MVC5+EF6 简易版CMS(非接口) 第二章:建数据模型 MVC5+EF6 简易版CMS(非接口 ...
- ThinkPHP项目CMS内容管理系统开发视频教程【20课】(3.02GB)
ThinkPHP背景介绍: ThinkPHP是一个免费开源的,快速.简单的面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业级应用开发而诞生的. ...
- 【Q】类和对象:游戏角色开发(角色介绍)
案例情景:某公司要开发新游戏,请用面向对象的思想设计英雄类.怪物类和武器类. 编写测试类,创建英雄对象.怪物对象和武器对象,并输出各自的信息. 其中设定分别如下: 1.英雄类 属性:英雄名字.生命值. ...
- Day01_搭建环境&CMS服务端开发
学成在线 第1天 讲义-项目概述 CMS接口开发 1 项目的功能构架 1.1 项目背景 受互联网+概念的催化,当今中国在线教育市场的发展可谓是百花齐放.如火如荼. 按照市场领域细分为:学前教育.K12 ...
- Thinkphp3.2 cms之权限管理
五.权限管理 <?php namespace Admin\Controller; use Think\Controller; class CommonController extends Con ...
- 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_01-项目概述-功能构架-项目背景
这个就是博学谷下的 在线教育平台
- Thinkphp3.2 cms之分类管理
四.分类管理 <?php namespace Admin\Controller; use Think\Controller; class CateController extends Contr ...
- Thinkphp3.2 cms之登陆模块
<?php /** * Created by dreamcms. * User: Administrator * Date: 2016/9/5 * Time: 17:15 */ namespac ...
- Thinkphp3.2 cms之文章模块
二.文章模块 <?php namespace Admin\Controller; use Think\Controller; class NewController extends Common ...
随机推荐
- 多测师讲解pyhon__hashlib_高级讲师肖sir
一.加密,加密成16进制的字符串 # import hashlib # 导入hashlib模块# md = hashlib.md5() # 获取一个md5加密算法对象# md.update('需要加密 ...
- 多测师讲解python函数 _open_高级讲师肖sir
open()函数 #open() 函数用于打开一个文件,创建一个 file 对象 #Python open() 函数用于打开一个文件,并返回文件对象, # 在对文件进行处理过程都需要使用到这个函数,如 ...
- Mysql索引(一篇就够le)
我想很多人对mysql的认知可能就是CRUD(代表创建(Create).更新(Update).读取(Retrieve)和删除(Delete)操作),也不敢说自己会用和熟悉mysql,当然我就是其中一个 ...
- C++11——chrono库开发高精度计!我们可能学的不是同一门语言~
一.前言 在我们写程序过程中,有时候需要测试我们的程序语句执行时间的耗时,当前也是有很多的库提供我们去使用,一直没有良好的跨平台的库可以提供出来:而且一般这种代码也是由我们程序员自己调用系统的库来进行 ...
- xpath教程-通过ID和Class检索 转
通过ID和Class检索 必备知识点 在html中,id是唯一的 在html中,class是可以多处引用的 工具 Python3版本 lxml库[优点是解析快] HTML代码块[从网络中获取或者自 ...
- Python可迭代对象和迭代器对象
可迭代对象iterable: 对象字面意思:Python中一切皆对象.一个实实在在存在的值. 可迭代:更新迭代.迭代是一个重复的过程,每次重复是基于上一次的结果而继续的,每次都有新的内容. 可迭代对象 ...
- Python 从入门到精通:一个月就够了
毫无疑问,Python 是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python 看似是一件十分困难的事.其实,只要掌握了科学的学习方法并制定了合理的学习计划, ...
- 微服务nacos服务注册与发现
一,以上一篇为基础 微服务从nacos配置中心获得配置信息 给service1, service2添加依赖 <dependency> <groupId>com.alibaba. ...
- 变量分割技术、判别学习(discriminative learning method)
基于模型的优化方法(model-based optimization method): 小波变换.卡尔曼滤波.中值滤波.均值滤波: 优点:对于处理不同的逆问题都非常灵活:缺点:为了更好的效果而采用各种 ...
- CentOS换yum源为国内源
CentOS换源 yum源 备份原来的文件. mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup ...