php实现站群软件权限管理功能示例

1.管理员页面RBAC.php

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>权限管理</title>
    <script src="bootstrap/js/jquery-1.11.2.min.js"></script>    
  </head>
  <body>  
    <h2>用户与角色管理</h2>
    <div>
      请选择用户:
    <select id="user">
      <?php
      require_once "./DBDA.class.php";
      $db = new DBDA();
      $sql = "select * from users";
      $arr = $db->query($sql,0);
      foreach($arr as $v){
        echo "<option value='{$v[0]}'>{$v[2]}</option>";
      }
      ?>
    </select>
    </div>  
    <br />
    <div>
      请选择角色:
      <?php
      $sql = "select * from roles";
      $arr = $db->query($sql,0);
      foreach($arr as $v){
        echo "<input type='checkbox' class='ck' value='{$v[0]}'>{$v[1]}";
      }
      ?>
    </div>
    <br />
    <input type="button" value="确认" id="btn"/>
  </body>
  <script>
    sel(); //选中默认角色
    $("#user").change(function(){
       //当用户选中变化的时候,去选中相应角色
      sel();
    })
      //点击确定保存角色信息
    $("#btn").click(function(){
      var uid = $("#user").val();
      var ck = $(".ck");
      var role = "";//初始为空
      for(i=0;i<ck.length;i++){
        var v = ck.eq(i).val();
        if(ck.eq(i).prop("checked")){
          role += ck.eq(i).val()+"|";
        }
      }
      $.ajax({
        type:"POST",
        url:"RBbtnchuli.php",
        data:{uid:uid,role:role},
        dataType:"TEXT",
        success:function(data){
          alert("修改成功!");
        }
      });
    })
      //选中默认角色的封装方法
    function sel(){
      var uid = $("#user").val();
      $.ajax({        
        url:"RBchuli.php",
        data:{uid:uid},
        type:"POST", 
        dataType:"TEXT",
        success:function(data){
          var role = data.split("|");
          var ck = $(".ck");
          ck.prop("checked",false);
          for(i=0;i<ck.length;i++){
            var v = ck.eq(i).val(); 
            if(role.indexOf(v)>=0){
              ck.eq(i).prop("checked",true);
            }
          } 
        }
      });
    }
    
  </script>
</html>

 

总共有5张表,users,roles和roleswork 3张表与另外2张表形成"w"型的关系,也是比较常见的一种权限数据库的方式,首先先做权限的设定,也就是管理层给不同用户设定不同权限。

2.做管理员的处理页面RBchuli.php

<?php
$uid = $_POST["uid"];
require_once "./DBDA.class.php";
$db = new DBDA();
$sql = "select rolesuid from users_roles where usersuid='{$uid}'";
echo $db->StrQuery($sql,0); 保存角色信息的处理页面RBbtnchuli.php

保存角色信息的处理页面RBbtnchuli.php

 <?php 
$uid = $_POST["uid"]; 
$role = $_POST["role"];//字符串 
$role = substr($role,0,strlen($role)-1); 
$arr = explode("|", $role); 
require_once "./DBDA.class.php"; 
$db = new DBDA(); 
//删除 
$sdel = "delete from users_roles where usersuid='{$uid}'"; 
$db->query($sdel); 
//添加 
foreach($arr as $v){ 
  $sql = "insert into users_roles values(0,'{$uid}','{$v}')"; 
  $db->query($sql); 

接下来做的是登录某个账号,查看自己的职能

3.用户登录页面RBlogin.php

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title></title>
    <script src="bootstrap/js/jquery-1.11.2.min.js"></script>
    <script src="bootstrap/js/bootstrap.min.js"></script>
    <link href="bootstrap/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet" type="text/css"/>
  </head>
  <style>
    .title{
      margin-left: 600px;
      margin-top: 150px;
    }
    .quanju{
      margin-left: 450px;
      margin-top: -180px;
    }
    .name,.pwd{
      max-width: 120px;
    }
    .yangshi1{
      margin-top: 200px;
    }
  </style>
  <body>    
<form class="form-horizontal" role="form" action="RBloginchuli.php" method="post">
  <h3 class="title">用户登录</h3>
  <div class="quanju">
      <div class="form-group yangshi1">
        <label for="firstname" class="col-sm-2 control-label">用户名:</label>
        <div class="col-sm-10">
          <input type="text" class="form-control name" name="uid" placeholder="请输入用户名">
        </div>
      </div>
      <div class="form-group yangshi2">
        <label for="lastname" class="col-sm-2 control-label">密码:</label>
        <div class="col-sm-10">
          <input type="text" class="form-control pwd" name="pwd" placeholder="请输入密码">
        </div>
      </div>
      <div class="form-group">
        <div class="col-sm-offset-2 col-sm-10">
          <div class="checkbox">
            <label>
            <input type="checkbox">
            保存密码 </label>
            <label>
            <input type="checkbox">
            下次自动登录 </label>
          </div>
        </div>
      </div>
      <div class="form-group">
        <div class="col-sm-offset-2 col-sm-10">
          <button type="submit" class="btn btn-warning" value="登录" οnclick="return login()" >
          登录
          </button>
          
        </div>
      </div>
    </div>  
  </form>    
  </body>
</html>

4.登录页面的处理页面RBloginchuli.php

<?php
session_start();
$uid = $_POST["uid"];
$pwd = $_POST["pwd"];
require_once "./DBDA.class.php";
$db = new DBDA();
$sql = "select pwd from users where uid='{$uid}'";
$mm = $db->StrQuery($sql,0);
if(!empty($pwd) && $pwd==$mm){
  $_SESSION["uid"] = $uid;
  header("location:RBmain.php");
}else{
  echo "<script>alert('用户名或密码有误!')</script>";
}

5.最后做用户的主页面RBmain.php

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>权限主页面</title>    
  </head>
  <body>
    <?php
    session_start();
    if(empty($_SESSION["uid"])){
      header("location:RBlogin.php");
      exit;
    }
    $uid = $_SESSION["uid"];
    
    require_once "./DBDA.class.php";
    $db = new DBDA();
    //子查询
    $sql = "select * from roleswork where code in (select * from roles_roleswork where rolesuid in (select * from users_roles where usersuid='{$uid}'))";
    $arr = $db->query($sql,0);
    foreach($arr as $v){
      echo "<div class='menu'>{$v[1]}</div>";
    }    
    ?>
        
  </body>
</html>

以上就是小编为大家带来的PHP实现站群软件权限管理功能示例的全部内容了,希望大家喜欢哦~

国微CMS是国内著名网平台提供商,提供PHP+mysql平台。国微企业系统主要满足集团型客户,一次性子公司、孙公司的模式。 功能包括:手机版、新闻资讯、产品模块、方案模块、广告模块、招商、人才招聘、视频模块、领导信箱、表单模块等。 系统功能: 后台可以一键克隆点 可以建立二级和三级子 可以数据相互推送 可以每个子选择不同的模板、管理 每个子可以设置自己的栏目 每个子拥有自己的广告模块 支持动静态分离部署 每个子具备日志功能 每个子提供文章、图片、视频、下载、产品等模型 支持栏目一键复制 提供默认的点和模板 所有的模板为自适应 每个点可以绑定不同的域名 系统体系化: 模块化体系:所有功能均已系统化、模块化、插件化,如CMS、问答、广告、标签 用户体系: 不仅区分企业、个人,并可自由添加角色组与角色,使其用户体系与实体一致。 权限体系: 所有功能模块封装并与权限匹配,可以细化至栏目对接角色管理权限。 标签体系: 常规标签、变量标签、标签后缀、标签缓存体系等已全面实施。 模板体系: 从方案模板、会员中心、系统模块模板、栏目、列表页面、内容页完全可独立选择。 积分体系: 积分兑换、积分消费、积分规则等已经开始在系统内实施。 菜单体系: 后台菜单、前台菜单、会员中心菜单均可自由添加和控制。 安全体系: 支持IP黑名单、白名单、支持防CC攻击、支持批量过滤敏感词汇。 通讯体系: 手机模块、邮件模块、短消息模块均已做成接口模式,任意功能均可方便调用。 程序整合体系:将支持UC等系统整合,同时互动百科也将整合
国微软件是是国内CMS著名品牌商,提供主流的PHP+mysql平台。提供的方案包括政府、高校、企业、部队等。 部队门户系统功能如下: 1、支持使用linux操作系统进行部署,同时也支持windows部署; 2、支持动静态分离部署;即数据库和程序可以物理格局服务器,访问页在前端服务器。 3、 提供文章、图片、视频、下载、信息公开、领导信箱、表单系统、广告模块、在线访谈、民意征集、在线调查、手机短信、通信录、数据备份、搜索模块、单网页、系统、专题模块、数据推送等相关必要模块。 4、具备强健的权限体系,分别支持角色和个人设置各个模块的权限,权限可以细化到文章栏目管理,支持个人可以管理不同栏目;支持多级审核。支持无限创建角色和角色组,可将线下的组织架构体系转移到线上;须支持用excel一键导入用户。 5、支持对栏目和内容一键设置局域网访问功能,栏目和内容访问可以设置IP段访问(如只允许校内访问)、同时栏目访问需要设置密码访问功能。 6、提供强大的统计体系:支持按用户发稿排名体系;可以按年、月、日以及时间段统计;支持每个子的用户发稿统计;支持子推送数据给主的稿件统计;统计的内容可以用excel导出;统计可以按作者和发布人分别统计。 7、表单系统可以自定义字段,每个字段可以设置为列表和查询;数据可以导入导出excel;各种报名可以配套手机短信。 8、支持系统设置IP 白名单和黑名单;支持后台登陆登陆的ip控制、须支持栏目可以设置密码访问、支持后台登陆错误次数限制与锁定、可以修改后台登陆地址。 9、系统支持一键批量替换敏感词;在特殊紧急情况下,可以在后台快速替换系统中已有的敏感词语、姓名、句子。 10、支持强大的可视化的标签体系,管理员可以在前台任何页面通过可视化标签,调用出系统的任何功能,如图片、幻灯片、内容、领导信箱、表单、在线访谈、在线调查等;每个功能可以选择数十种样式。让系统极其易用; 11、支持前台内容操作模式,所有栏目管理员在当前页面,都可以管理(包括发布、编辑、数据推送)自己所负责的栏目内容,无需进入后台和会员中心; 12、微信公众号二次开发系统支持绑定微信公众号;支持数据推送给公众号显示,节约老师时间;后续新增的公众号功能免费升级; 14、系统支持核心文件校验功能。 15、发布内容可以修改时间,支持定时发布。 16、提供系统,后台可以创建N个点。 17、系统支持一键克隆,几分钟即可创建一个点,每个点可以设置域名和管理员。 18、每个点都可以相互推送数据,解决信息孤岛。 19、支持误删栏目一键恢复。支持误删点一键恢复。 20200403升级说明: 主要解决了在PHP7.X环境的安装兼容情况。 加上了留言板模块。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值