人人人妻人人人妻人人人,99精品国产综合久久久久五月天 ,欧美白人最猛性XXXXX,日韩AV无码免费播放

News新聞

業(yè)界新聞動態(tài)、技術(shù)前沿
Who are we?

您的位置:首頁      樂道系統(tǒng)FAQ      PHP實現(xiàn)權(quán)限管理功能示例

PHP實現(xiàn)權(quán)限管理功能示例

標(biāo)簽: 發(fā)布日期:2017-09-22 00:00:00 321
【CLI】利用Curl下載文件實時進度條顯示的實現(xiàn)

權(quán)限管理系統(tǒng),它主要是為了給不同的用戶設(shè)定不同的權(quán)限,從而實現(xiàn)不同權(quán)限的用戶登錄之后使用的功能不一樣。

首先先看下數(shù)據(jù)庫

總共有5張表,users,roles和roleswork 3張表與另外2張表形成"w"型的關(guān)系,也是比較常見的一種權(quán)限數(shù)據(jù)庫的方式,首先先做權(quán)限的設(shè)定,也就是管理層給不同用戶設(shè)定不同權(quán)限。

1.管理員頁面RBAC.php

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>權(quán)限管理</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(){
       //當(dāng)用戶選中變化的時候,去選中相應(yīng)角色
      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>