0625jQuery练习:权限基础1:查询员工对应角色、修改员工对应角色

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>Document</title>
    <script src="../0622/jquery-3.3.1.min.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
    用户:<select id="yhsel" class="yonghu" onchange="yuangong_juese()"></select>
    <button onclick="xiugai()">修改</button>
    <br>
    <br>
    <div></div>
</body>
</html>
<script type="text/javascript">
    $(function(){
        yuangong();
    })
//    查询所有员工========================================================================
    function yuangong(){
        $.ajax({
            type:"post",
            url:"chuli.php",
            async:true,
            data:{
                type:"yuangong"
            },
            dataType:"json",
            success:function(data){
                var str = "";
                for(var i = 0;i < data.length;i++){
                    str += "<option value = \""+data[i][1]+"\">"+data[i][3]+"</option>"
                }
                $(".yonghu").html(str);
                juese();
            }
        });
    }
//    查询所有角色=====================================================================
    function juese(){
        $.ajax({
            type:"post",
            url:"chuli.php",
            async:true,
            data:{
                type:"juese"
            },
            dataType:"json",
            success:function(data){
                var str = "角色:";
                for(var i = 0;i < data.length;i++){
                    str += "<input class = 'juese' type='checkbox' value = \""+data[i][0]+"\"/>"+data[i][1];
                }
                $("div").html(str);
                yuangong_juese();
            }
        });
    }
//    员工对应角色======================================================================
    function yuangong_juese(){
//        找到选则的员工================================================================
        var yg = $("#yhsel").val();
//        找到所有的角色复选框===========================================================
        var yixuan = $(".juese");
//        把所有的角色复选框都重置========================================================
        yixuan.prop("checked",false);
        $.ajax({
            type:"post",
            url:"chuli.php",
            async:true,
            data:{
                type:"yuangong_juese",
                yg:yg
            },
            dataType:"json",
            success:function(data){
//                获取选中员工在员工对应角色表中的所有信息(二维信息数组)===========================
                for (var i = 0;i < data.length;i++) {
                    for(var j = 0;j < yixuan.length;j++){
//                        遍历所有的角色复选框,把value值(角色的代号)等于选中员工角色的代号(二维信息数组data的第i项的第0项)的复选框的checkde改为true(变为选中状态)
                        if(yixuan[j].value == data[i][2]){
                            yixuan[j].checked = true;
                        }
                    }
                }
            }
        });
    }
//    修改员工角色=======================================================================
    function xiugai(){
//        找到选则的员工=================================================================
        var yg = $("option:selected").val();
//        找到所有的角色复选框===========================================================
        var yixuan = $(".juese");
        var str = [];
//        判断所有复选框的选中状态,如果是true(选中),就把这个复选框的value(对应角色的代号)放到数组str中
        for(var j = 0;j < yixuan.length;j++){
            if(yixuan[j].checked == true){
                str.push(yixuan[j].value);
            }
        }
        $.ajax({
            type:"post",
            url:"chuli.php",
            async:true,
            data:{
                type:"xiugai",
                yg:yg,
                juese:str
            },
            dataType:"text",
            success:function(data){
                if(data = "yes"){
                    alert("修改成功");
                }
            }
        });
    }
</script>
<?php
    $conn = new mysqli("localhost","root","","ceshizbz");
    $conn->connect_error?die():"";
    $type = $_POST['type'];
    switch($type){
        case "yuangong":
//        返回员工表的所有信息=========================================
        $sql = "select * from user";
        $result = $conn->query($sql);
        $attr = $result->fetch_all();
        echo json_encode($attr);
        break;
        case "juese":
//        返回角色表的所有信息=========================================
        $sql = "select * from juese";
        $result = $conn->query($sql);
        $attr = $result->fetch_all();
        echo json_encode($attr);
        break;
        case "yuangong_juese":
//        获取选中员工==================================================
        $yg = $_POST['yg'];
//        返回选中员工在员工对应角色表中的所有信息===========================
        $sql = "select * from user_juese where userid = '{$yg}'";
        $result = $conn->query($sql);
        $attr = $result->fetch_all();
        echo json_encode($attr);
        break;
        case "xiugai":
//        获取选中员工==================================================
        $yg = $_POST['yg'];
//        获取选中角色==================================================        
        $juese = $_POST['juese'];
//        添加之前先把选中员工的所有角色从员工对应角色表中删除==================
        $sqlb = "delete from user_juese where userid = '{$yg}'";
        $resultb = $conn->query($sqlb);
        for($i=0;$i<count($juese);$i++){
//            把选中员工的选中角色逐条添加到员工对应角色表中====================
            $sqla = "insert into user_juese values('','{$yg}','{$juese[$i]}')";
            $resulta = $conn->query($sqla);
        }
        if($resulta){
            echo "yes";    
        }
        break;
    }
?>

posted @ 2018-06-25 16:41  359950470  阅读(224)  评论(0编辑  收藏  举报