• 权限管理(0527)


    权限管理:

    一、

    登录页面:login.php

     1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     2 <html xmlns="http://www.w3.org/1999/xhtml">
     3 <head>
     4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     5 <title>无标题文档</title>
     6 </head>
     7 
     8 <body>
     9 <br />
    10 <h1>登录页面</h1>
    11 <br />
    12 <form action="loginchu.php" method="post">
    13 <div>用户名:<input type="text" name="uid" /></div><br />
    14 <div>密&nbsp;&nbsp;码:<input type="text" name="psw" /></div><br />
    15 <input type="submit" value="登录" />
    16 
    17 </form>
    18 </body>
    19 </html>
    View Code

    登录处理页面:loginchu.php

     1 <?php
     2 session_start();
     3 $uid=$_POST["uid"];
     4 $psw=$_POST["psw"];
     5 
     6 include ("../DBDA.class.php");
     7 $db=new DBDA();
     8 //查找有无这条信息
     9 $sql="select count(*) from users where UserName='{$uid}' and Password='{$psw}'";
    10 
    11 $r=$db->StrQuery($sql);
    12 
    13 if($r==1)
    14 {
    15     $_SESSION["uid"]=$uid;
    16     header("location:main.php");
    17     }
    18 else
    19 {
    20     header("location:login.php");
    21     }
    View Code

    登录页面显示:

    二、

    权限管理页面:quanxian.php

      1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      2 <html xmlns="http://www.w3.org/1999/xhtml">
      3 <head>
      4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      5 <title>权限管理</title>
      6 <script src="../jquery-1.11.2.min.js"></script>
      7 </head>
      8 
      9 <body>
     10 <h1>权限管理</h1><br />
     11 <div>用户管理:
     12     <select id="sel">
     13         <?php
     14         //查找用户信息
     15         include("../DBDA.class.php");
     16         $db=new DBDA();
     17         $sql="select * from users";
     18         $attr=$db->Query($sql);
     19         foreach($attr as $v)
     20         {
     21             echo "<option value='{$v[0]}'>{$v[2]}</option>";
     22             }
     23         ?>
     24     </select>
     25 </div><br /><br />
     26 
     27 <div>请选择角色:
     28     <div><br />
     29     <?php
     30     //查找角色务信息:
     31     $sqljs="select * from juese";
     32     $attrjs=$db->Query($sqljs);
     33     foreach($attrjs as $vjs)
     34     {
     35         echo "<input type='checkbox' class='js' value='{$vjs[0]}'>{$vjs[1]}";
     36         }
     37     
     38     ?>
     39     </div><br />
     40 </div><br />
     41 <input type="button" id="qd" value="确定" />
     42 
     43 </body>
     44 <script type="text/javascript">
     45 $(document).ready(function(e) {
     46     
     47         ShowJueSe();
     48     //选择用户后出现对应的角色
     49     $("#sel").change(function(){
     50         
     51             ShowJueSe();
     52         })
     53     function ShowJueSe()
     54     {
     55             //查找用户
     56         var uid=$("#sel").val();
     57         $.ajax({
     58             url:"juese.php",
     59             data:{uid:uid},
     60             type:"POST",
     61             dataType:"TEXT",
     62             success: function(data){
     63                 //处理传过来的角色代号
     64                 var shuju=data.split("|");
     65                 //取所有的角色
     66                 var ck=$(".js");
     67                 
     68                 //清除前面的选中内容
     69                 ck.prop("checked",false);
     70                 
     71                 for(var i=0;i<ck.length;i++)
     72                 {
     73                     
     74                     var v=ck.eq(i).val();
     75                     //取出的值是否在shuju
     76                     //$.inArray($v,shuju);确定第一个参数在数组中的位置(如果没有找到则返回 -1 )。 
     77                     if($.inArray(v,shuju)>=0)//如果值在shuju中
     78                     {
     79                         //取得值选中
     80                         ck.eq(i).prop("checked",true);
     81                     }    
     82                 }
     83                 
     84                 }
     85             
     86             });
     87             
     88             
     89         }
     90     
     91     
     92     
     93     //点击确定提交添加或修改
     94     $("#qd").click(function(){
     95         var uid=$("#sel").val();
     96         var ck=$(".js");
     97         var str="";
     98         for(var i=0;i<ck.length;i++)
     99         {
    100             //取选中的角色
    101             if(ck.eq(i).prop("checked"))
    102             {
    103                 //拼接成字符串,并用“|”分割。“+”是拼接符
    104                 str=str+ck.eq(i).val()+"|";
    105                 }
    106             }
    107             //截取字符串,去掉最后的“|”
    108         str=str.substr(0,str.length-1);
    109         $.ajax({
    110             url:"chuli.php",
    111             data:{uid:uid,juese:str},
    112             type:"POST",
    113             dataType:"TEXT",
    114             success: function(data){
    115                 
    116                 if(data.trim()=="OK")
    117                 {
    118                     alert("操作成功!");
    119                     }
    120                 else
    121                 {
    122                     alert("操作失败!");
    123                     }
    124                                 
    125                 }
    126                         
    127             });
    128         
    129         })
    130     
    131 });
    132 </script>
    133 
    134 
    135 </html>
    View Code

    选择用户角色:juese.php

    1 <?php
    2 $uid=$_POST["uid"];
    3 
    4 include("../DBDA.class.php");
    5 $db=new DBDA();
    6 
    7 //根据用户查找对应的角色
    8 $sql="select JueSeId from UserInJueSe where UserId='{$uid}'";
    9 echo $db->StrQuery($sql);
    View Code

    选择好后提交处理页面:chuli.php

     1 <?php
     2 include("../DBDA.class.php");
     3 $db=new DBDA();
     4 
     5 $uid=$_POST["uid"];
     6 $js=$_POST["juese"];
     7 //拆分字符串
     8 $juese=explode("|",$js);//输出的是数组
     9 //判断以下条件是否全部执行成功
    10 $bs=true;//先定义一个变量为真
    11 //如果原来有记录的全部清空后在重新添加
    12 //清空原来的信息
    13 $del="delete from UserInJueSe where UserId ='{$uid}'";
    14 if(!$db->Query($del,1))
    15 {
    16     $bs=$bs && false;//若执行失败,返回false    
    17     }
    18 
    19 foreach($juese as $v)
    20 {
    21     //添加信息
    22     $sql="insert into UserInJueSe values                 ('','{$uid}','{$v}')";
    23     if(!$db->Query($sql,1))
    24     {
    25         $bs=$bs && false;//若执行失败,返回false    
    26         }
    27     
    28     }
    29 
    30 if($bs)
    31 {
    32     echo "OK";
    33     }
    34 else
    35 {
    36     echo "NO";
    37     }
    View Code

    运行权限管理:

    三、

    主页面:main.php

     1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     2 <html xmlns="http://www.w3.org/1999/xhtml">
     3 <head>
     4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     5 <title>主页面</title>
     6 <style type="text/css">
     7 *{
     8     margin:0px auto;
     9     padding:0px;
    10     }
    11 #menu{
    12     70%;
    13     height:40px;
    14     margin-left:300px;
    15     }
    16 .aa{
    17     100px;
    18     height:40px;
    19     background-color:#8080FF;
    20     color:white;
    21     font-size:18px;
    22     text-align:center;
    23     line-height:40px;
    24     vertical-align:middle;
    25     float:left;
    26     }
    27 .aa:hover{    
    28     cursor:pointer;
    29     background-color:#FF8080;}
    30 
    31 </style>
    32 </head>
    33 
    34 <body>
    35 <?php
    36 session_start();
    37 if(empty($_SESSION["uid"]))
    38 {    
    39     header("location:login.php");
    40     exit;
    41     }
    42 $uid=$_SESSION["uid"];
    43 include("../DBDA.class.php");
    44 $db=new DBDA();    
    45 ?>
    46 <br />
    47 <br />
    48 
    49 <center><h1>主页面</h1></center>
    50 <div style="margin-right:150px; 100px; height:10px;">
    51 <a href="login.php">退出 <?php echo $uid; ?></a>
    52 </div>
    53 <br />
    54 <div id="menu">
    55 <div class="aa">管理权限</div>
    56     <?php
    57     
    58     //根据用户名找到所对应的角色代号
    59     $sql="select JueSeId from UserInJueSe where UserId ='{$uid}'";
    60     $sd=$db->Query($sql);//结果是数组,存到
    61     
    62     //根据角色代号找到对应的功能
    63     $all=array();//存储该用户所有的功能代号
    64     
    65     foreach($sd as $vsd)
    66     {
    67         $sgn="select RuleId from JueSeWithRules where JueSeId='{$vsd[0]}'";
    68         $agn=$db->Query($sgn);
    69         foreach($agn as $vgn)
    70         {
    71             array_push($all,$vgn[0]);
    72             
    73             }
    74         }
    75         $all=array_unique($all);//移除数组中重复的值array_unique()
    76         
    77         
    78         //显示菜单
    79         foreach($all as $vall)
    80         {
    81             $smn="select Name from Rules where code='{$vall}'";
    82             $name=$db->StrQuery($smn);
    83             echo "<div class='aa'>{$name}</div>";
    84             }
    85         
    86 
    87     ?>
    88 </div>
    89 </body>
    90 </html>
    View Code

    运行主页面:

  • 相关阅读:
    现在连Linux都搞不懂,当初我要是这么学习操作系统就好了!
    一时技痒,撸了个动态线程池,源码放Github了
    Java线程池ThreadPoolExecutor使用和分析(一)
    canch----1.对缓存的思考
    1.java 内存数据库--H2数据库使用指南
    What’s the difference between persist, save, merge and update? Which one should you use?
    primary key's generator in JPA entity
    STM32F103驱动M24256 256k存储芯片进行读写
    【Proteus+51单片机学习笔记】-51/52系列单片机简介
    【STM32项目笔记】STM32CubeMX+Keil+Proteus联合实现LED闪烁
  • 原文地址:https://www.cnblogs.com/ds-3579/p/5541533.html
Copyright © 2020-2023  润新知