PHP——小尾巴之权限管理

流程:

在权限管理页面,默认显示用户的角色,更改复选框的按钮内容,可以改变角色,点击确定提交至数据库

在登陆之后,只显示该用户的角色所对应的权限

数据库:

guanli.php

<!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" />
<title>无标题文档</title>
<script src="../jquery-1.11.2.min.js"></script>
</head>

<body>
<h1>权限管理</h1>
<div>请选择用户:
<select id="user">
<?php
    include("../mydbda.php");
    $db = new mydbda();
    $sqlu = "select * from Users";
    $str = $db->Select($sqlu,"CX","mydb");
    $hangu = explode("|",$str);
    for($i=0;$i<count($hangu);$i++)
    {
        list($uid,$pwd,$name) = explode("^",$hangu[$i]);
        echo "<option value=‘{$uid}‘>{$name}</option>";
    }
?>
</select></div><br />

<div>请选择角色:</div><br />

<div>
<?php

    $sqlj = "select * from JueSe";
    $strj = $db->Select($sqlj,"CX","mydb");
    $hangj = explode("|",$strj);
    for($i=0;$i<count($hangj);$i++)
    {
        list($code,$name) = explode("^",$hangj[$i]);
        echo "<input type=‘checkbox‘ class=‘juese‘ value=‘{$code}‘ />{$name}&nbsp;";
    }

?>

</div><br />
<div><input type="button" id="sure" value="确定"/></div>
</body>
<script type="text/javascript">
$(document).ready(function(e) {

    Xianshi($("#user").val());

    //选中用户,显示其角色
    $("#user").change(function(){

            var uid =$(this).val();

            Xianshi(uid);

        })

        function Xianshi(uid)
        {
            var ckall = $(".juese");
            for(var j=0;j<ckall.length;j++)
            {
                ckall.removeAttr("checked");
                //ckall.attr("checked","false");
                //document.getElementById().setAttribute(
            }

            $.ajax({

                    url:"chulijuese.php",
                    data:{uid:uid},
                    type:"POST",
                    dataType:"TEXT",
                    success: function(data){
                            if(!data == "")
                            {
                                var hang = data.split("|");
                                for(var i=0;i<hang.length;i++)
                                {
                                    var lie = hang[i].split("^");
                                    var ck = $(".juese");

                                    for(var j=0;j<ck.length;j++)
                                    {
                                        if(ck.eq(j).val() == lie[2])
                                        {
                                            ck.eq(j).prop("checked","true");
                                        }

                                    }
                                }
                            }

                        }

                });
        }

        //添加按钮
        $("#sure").click(function(){

                var uid = $("#user").val();
                var ck = $(".juese");
                var str = "";
                for(var j=0;j<ck.length;j++)
                {
                    if(ck.eq(j)[0].checked == true)
                    {
                        str = str + ck.eq(j).val()+"|";
                    }
                }    

                str = str.substr(0,str.length-1);

                $.ajax({

                        url:"chuliadd.php",
                        data:{uid:uid,str:str},
                        type:"POST",
                        dataType:"TEXT",
                        success: function(data){

                                if(data == "OK")
                                {
                                    alert("操作成功!");
                                }

                            }

                    });

            })

});

</script>
</html>

chuliadd.php

<?php
    include("../mydbda.php");
    $db = new mydbda();
    $uid = $_POST["uid"];
    $str = $_POST["str"];

    $sqld = "delete from UserInJueSe where UserId = ‘{$uid}‘";
    $jg = $db->Select($sqld,"QT","mydb");

    if($jg == "OK")
    {
        $juese = explode("|",$str);

        for($i=0;$i<count($juese);$i++)
        {
            $sql = "insert into UserInJueSe values(‘‘,‘".$uid."‘,‘".$juese[$i]."‘)";
            $db->Select($sql,"QT","mydb");
        }

        echo "OK";
    }

?>

chulijuese.php

<?php
    include("../mydbda.php");
    $uid = $_POST["uid"];
    $sql = "select * from UserInJueSe where UserId = ‘{$uid}‘";
    $db = new mydbda();
    $str = $db->Select($sql,"CX","mydb");

    echo $str;

?>

denglu.php

<!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" />
<title>无标题文档</title>
</head>

<body>
<h1>登录</h1>
<form action="main.php" method="post">
<div>用户名:<input type="text" name="uid"/></div>
<div>密码:<input type="text" name="pwd"/></div>
<input type="submit"  value="登录"/>
</form>
</body>
</html>

main.php

<!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" />
<title>无标题文档</title>
</head>

<body>
<h1>主页面</h1>
<?php
    include("../mydbda.php");
    $db = new mydbda();
    $uid = $_POST["uid"];
    $pwd = $_POST["pwd"];

    $sql = "select count(*) from Users where Uid =‘".$uid."‘ and Pwd = ‘".$pwd."‘";
    $str = $db->Select($sql,"CX","mydb");
    if($str == 1)
    {
    }
    else
    {
        header("Location:denglu.php");
    }

?>

<div style="width:100%; height:35px; background-color:#60F; color:white; font-size:20px;">

    <div style="width:150px; height:35px; vertical-align:middle; line-height:35px; float:left; text-align:center;">权限管理</div>

    <?php

        $sqlj = "select * from UserInJueSe where UserId = ‘{$uid}‘";
        $strj = $db->Select($sqlj,"CX","mydb");

        $hangj = explode("|",$strj);
        $xianshi = array();
        for($i=0; $i<count($hangj);$i++)
        {
            $liej = explode("^",$hangj[$i]);

            $sqlr = "select RuleId from JueSeWithRules where JueSeId = ‘".$liej[2]."‘";

            $strr = $db->Select($sqlr,"CX","mydb");

            $hangr = explode("|",$strr);

            $xianshi = array_merge($xianshi,$hangr);//合并数组
        }

        $xianshi = array_unique($xianshi); //去重

        for($i=0; $i<count($xianshi);$i++)
        {
            $sqlname = "select * from Rules where Code = ‘".$xianshi[$i]."‘";

            $strname = $db->Select($sqlname,"CX","mydb");

            list($code,$name) = explode("^",$strname);

            echo "<div style=‘width:150px; height:35px; vertical-align:middle; line-height:35px; float:left; text-align:center;‘>{$name}</div>";

        }

    ?>

</div>

</body>
</html>
时间: 2024-10-23 05:58:32

PHP——小尾巴之权限管理的相关文章

一款集代码生成器+权限管理+工作流+报表工具+APP小程序于一体的敏捷开发框架

XJR敏捷开发框架是一套集代码生成器+通用权限管理+工作流+即时通讯+报表工具+手机APP小程序开发于一体的敏捷开发框架.拖拽拉可视化操作配置,降低开发难度和缩短开发周期,提高80%以上的工作效率,提供源码,可无线扩展,轻松开发CRM.OA.ERP.WMS.小程序.电商管理后台等各种企业管理系统. 以下是这个敏捷开发框架的一些阐述: 技术特点 技术选型: 使用目前流行的多种web技术,包括springboot, JPA,Druid, Activiti,Lombok,swagger,poi,Web

对liunx系统中用户和权限管理一点小心得

近期才接触Liunx,给我的感觉,并不是很难,但是知识点很多,命令杂,并且附带了茫茫多的选项.接下来我就拿用户和权限管理来举个例子. 一丶用户&组的创建,管理. 用户,顾名思义,就是在系统上的接口进行操作的人. 用户分为:1.管理员(root)2.普通用户(user):系统用户和登录用户 管理员比较好理解,好比说一个国家的国王,拥有对国家最高的指挥权.root在linux系统中就扮演了国王的角色,任何的权限对它来说都形同虚设. 而普通用户,相当于这个国家的公民,必须遵循国家规定的法律. 普通用户

Linux之小基础-用户和权限管理

一.何为Linux用户: Linux是个多用户多任务的分时操作系统,所有一个要使用系统资源的用户,都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也能帮助用户组织文件,并为用户提供安全性保护.每个用户账号都拥有一个惟一的用户名和用户口令.用户在登录时键入正确的用户名和口令后,才能进入系统和自己的主目录. 二.用户的分类: Unix/Linux系统中有两类用户超级用户(root)和一般用户

MySQL权限管理小程序

作业:      参考表结构:          用户类型          用户信息          权限          用户类型&权限     功能:           1. 登陆.注册.找回密码 2. 权限管理 3. 角色管理 4. 角色分配权限 5. 动态显示当前登陆用户权限菜单 注:可基于反射实现将权限和代码结合" 1 from sqlalchemy import create_engine 2 from sqlalchemy.ext.declarative impor

MySQL数据库(7)_用户操作与权限管理、视图、存储过程、触发器、基本函数

用户操作与权限管理 MySQL用户操作 创建用户 方法一: CREATE USER语句创建 CREATE USER "用户名"@"IP地址" IDENTIFIED BY "密码"; 方法二: INSERT语句创建 INSERT INTO mysql.user(user,host, password,ssl_cipher,x509_issuer,x509_subject) VALUES('用户名','IP地址',password('密码'),'',

ASP.NET MVC+EF框架+EasyUI实现权限管理系列

http://www.cnblogs.com/hanyinglong/archive/2013/03/22/2976478.html ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇 前言:博客又有一段时间没有更新了,心里感觉这段时间空空的,好像什么都没有学下,所以就想写博客,所以就有了这个系列,这里当然也要感谢大家了,因这个 项目我已经上传了,得到了很多网友的评价,也有好多人发邮件给我说这个框架容易出现问题,不能访问,这也是支持我写这个系列的动力,我将这个项目写成一个 系列

2015年8月27日课程作业(文件权限管理及grep正则和扩展正则表达式)-JY1506402-19+liuhui880818

学习内容:文件权限管理及grep正则和扩展正则表达式 系统环境:CentOS 6.7/7 x86_64 一.作业(练习)内容: 1.总结本此课程中所涉及命令的使用方法及相关示例展示: 2.总结基本正则表达式及扩展正则表达式 3.显示/etc/passwd文件中以bash结尾的行 4.显示/etc/passwd文件中的两位数或三位数 5.显示`netstat -tan`命令结果中以'LISTEN'后跟0个.1个或者多个空白字符结尾的行 6.添加用户bash.testbash.basher以及nol

【原创】C#通用权限管理-程序安全检查,这些你一定要考虑到位

接触通用权限已经一年,现在使用已经很熟练,分享通用权限管理下面的一些好的开发思想. 安全漏洞对于一个小项目来说,可能不是特别的重视,对于一个大项目来说,这是特别重要需要注意的,特别是在项目开发中的就要警惕,下面我列举一些项目开发中需要注意的安全 页面文本框的检查,每个文本框填写的内容是什么类型就是必须用正则表达式进行强制限制,不能随便输入无用的信息,这是第一步 对于C/S的程序,我们可以直接用正则表达式来限制,对于B/S的页面程序,我们也是需要js验证和后台代码的验证,因为浏览器可以禁止js,让

Jenkins2.32用户和权限管理策略

前言 在使用jenkins的过程中,需要为不同的角色分配相应的权限,如果jenkins的用户数据能和公司现在的帐号系统结合起来那会更好. 关于如何为用户分组,我推荐使用 role based authorization strategy 这个插件 我的环境如下: 版本:Jenkins ver. 2.32.3 系统:windows 7 x64 进入用户管理 如果使用的是jenkins内置的用户数据库,操作方法如下: 1.使用管理员帐号登录,选择 Configure Global Security