• 权限管理1:对用户角色的增删改


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="../jquery-1.11.2.min.js"></script>
    <title>无标题文档</title>
    </head>
    
    <body>
    <?php
    include("../DBDA.class.php");
    $db = new DBDA
    ?>
    <br />
    
    <div>请选择用户:
        <select id="sel">
    <?php
            $sql = "select * from users";
            $attr = $db->Query($sql);
            foreach($attr as $v)
            {
                echo "<option value='{$v[0]}'>{$v[2]}</option>";
            }
            
            $fuid = $attr[0][0];//取到第一个人的用户名
            
            ?> 
        </select>
        <br />
        <div><br />请选择角色:<br /><br />
    <?php
            $sjuese = "select * from juese";
            $ajuese = $db->Query($sjuese);
            foreach($ajuese as $v)
            {
                $sxz = "select count(*) from userinjuese where userid='{$fuid}' and jueseid='{$v[0]}'";//userid='{$fuid}'刷新网页显示的名字。jueseid='{$v[0]}'每个复选框的属性值。
                
                $n = $db->StrQuery($sxz);
                
                if($n>0)//遍历出来的用户名中有的角色就加上选中状态。
                {
                    echo "<input type='checkbox' class='juese' checked='checked' value='{$v[0]}' />{$v[1]} &nbsp;";//让刷新页面出来的用户的角色默认是选中状态
                }
                else
                {
                    echo "<input type='checkbox' class='juese' value='{$v[0]}' />{$v[1]} &nbsp;";//{$v[0]}角色代号,没有的角色就世界输出。
                }
            }
            ?>
            
        </div>
    
    </div>
    <br />
    <input type="button" value="保存" id="btn" />
    
    </body>
    <script type="text/javascript">
    $("#sel").change(function(){
        
        var uid = $("#sel").val();
        $.ajax({
            url:"chuli.php",
            data:{uid:uid},
            type:"POST",
            dataType:"TEXT",
            success: function(data){
                    var js = data.split("|");
                    var ck = $(".juese")
                    ck.prop("checked",false);//先清除所有的选中状态
                    //让等于返回角色代号的选中
                    for(var i = 0;i<ck.length;i++)
                    {
                        if(js.indexOf(ck.eq(i).val())>-1)//判断checkbos里面的值是不是在数组里面出现了
                        {
                            ck.eq(i).prop("checked",true);//如果出现,说明这个人有这个角色,就让角色选中。
                        }
                    }
                }
            
            })
        
        })
        
    $("#btn").click(function(){
        var uid = $("#sel").val();
        //角色代号
        var ck = $(".juese");
        var str ="";
        for(var i=0;i<ck.length;i++)
        {
            if(ck.eq(i).prop("checked"))
            {
                str=str+ck.eq(i).val()+"|";
            }
        }
        str = str.substr(0,str.length-1);
        
        $.ajax({
                url:"add.php",
                data:{uid:uid,juese:str},
                type:"POST",
                dataType:"TEXT",
                success: function(){
                        alert("保存成功");
                    }
            });
        
        })
    
    </script>
    </html>

    chuli.php

    <?php
    include("../DBDA.class.php");
    $db = new DBDA();
    $uid = $_POST["uid"];
    $sql = "select jueseid from userinjuese where userid='{$uid}'";
    echo $db->StrQuery($sql);

    add.php

    <?php
    include("../DBDA.class.php");
    $db = new DBDA();
    $uid = $_POST["uid"];
    $juese = $_POST["juese"];
    $attr = explode("|",$juese);
    $sdel = "delete from userinjuese where userid='{$uid}'";//把用户所有的角色删除
    $db->Query($sdel,0);
    
    //将取到的用户信息添加
    foreach($attr as $v)
    {
        $sql = "insert into userinjuese values('','{$uid}','{$v}')";
        $db->Query($sql,0);
    }
  • 相关阅读:
    洛谷 P2590 [ZJOI2008]树的统计
    如何让文件夹隐藏起来,保护自己的隐私
    SharePoint入门——创建一个网站
    SharePoint 解决管理员密码修改后各种问题的来袭
    .NET创建一个即是可执行程序又是Windows服务的程序
    C#——WebApi 接口参数传参详解
    C#中对Web.Config、App.Config字符串加密与解密的方法
    邮件服务器常用地址和端口信息
    Unity3d 5.x搭载VS2013使用
    系统性能优化- Session丢失
  • 原文地址:https://www.cnblogs.com/Strive-count/p/6078028.html
Copyright © 2020-2023  润新知