PHP 权限管理

login页面
<form action="loginchuli.php" method="post">
    <div>用户名:<input type="text" name="uid" /></div>
    <div>密码:<input type="text" name="pwd" /></div>
    <input type="submit" value="登录" />
</form>
loginchuli页面
<?php
session_start();
$uid = $_POST["uid"];
$pwd = $_POST["pwd"];

include("../DBDA.php");
$db = new DBDA();

$sql = "select count(*) from Users where Uid=‘{$uid}‘ and Pwd = ‘{$pwd}‘";

$z = $db->StrQuery($sql);

if($z == 1)
{
    $_SESSION["uid"] = $uid;
    header("location:main.php");
}
else
{
    header("location:login.php");
}

main主页面

<?php
session_start();

if(empty($_SESSION["uid"]))
{
    header("location:login.php");
    exit;
}
$uid = $_SESSION["uid"];

include("../DBDA.php");
$db = new DBDA();
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
*{ margin:0px auto; padding:0px}
#menu{
    width:100%;
    height:40px;
    }
.cd{
    width:100px;
    height:40px;
    background-color:#60C;
    color:white;
    font-size:18px;
    text-align:center;
    line-height:40px;
    vertical-align:middle;
    float:left;
    }
.cd:hover{

    background-color:#F33;
    cursor:pointer;

    }
</style>
</head>

<body>
<br />
<center><h1>主页面</h1></center>
<br />
<a href="login.php">退出 <?php echo $uid; ?></a>
<br />

<div id="menu">
    <div class="cd">权限管理</div>

    <?php

    //根据用户名找到所对应的角色代号
    $sjs = "select JueSeId from UserInJueSe where UserId =‘{$uid}‘ ";

    $ajs = $db->Query($sjs);

    //根据角色代号找到对应的功能
    $all = array();//存储该用户所有的功能代号

    foreach($ajs as $vjs)
    {
        $sgn = "select RuleId from JueSeWithRules where JueSeId =‘{$vjs[0]}‘";
        $agn = $db->Query($sgn);

        foreach($agn as $vgn)
        {
            array_push($all,$vgn[0]);
        }
    }

    $all = array_unique($all);

    //显示菜单
    foreach($all as $vall)
    {
        $sn = "select Name from Rules where Code = ‘{$vall}‘";
        $name = $db->StrQuery($sn);

        echo "<div class=‘cd‘>{$name}</div>";
    }

    ?>

</div>

guanli页面

<h1>权限管理</h1>

<div>请选择用户:
    <select id="user">
        <?php
        include("../DBDA.php");
        $db = new DBDA();

        $sql = "select * from Users";
        $attr = $db->Query($sql);

        foreach($attr as $v)
        {
            echo "<option value=‘{$v[0]}‘>{$v[2]}</option>";
        }

        ?>
    </select>
</div>
<br />
<div>
    <div>请选择角色:</div>
    <br />
    <div>
       <?php
        $sqljs = "select * from JueSe";
        $attrjs = $db->Query($sqljs);

        foreach($attrjs as $v)
        {
            echo "<input class=‘js‘ type=‘checkbox‘ value=‘{$v[0]}‘ /> {$v[1]} &nbsp;";
        }
    ?>
    </div>
</div>
<br />
<div>
    <input type="button" value="确定" id="btn" />
</div>
</body>
<script type="text/javascript">
$(document).ready(function(e) {

    ShowJueSe();

    $("#user").change(function(){

        ShowJueSe();

        })

    function ShowJueSe()
    {
        var uid = $("#user").val();
        $.ajax({
            url:"seljuese.php",
            data:{uid:uid},
            type:"POST",
            dataType:"TEXT",
            success: function(data){

                var shuju = data.split("|");

                var ck = $(".js");
                ck.prop("checked",false);

                for(var i=0;i<ck.length;i++)
                {
                    var v = ck.eq(i).val();

                    if($.inArray(v,shuju)>=0)
                    {
                        ck.eq(i).prop("checked",true);
                    }

                }

                }

            });

    }

    $("#btn").click(function(){

        var uid = $("#user").val();

        var ck = $(".js");
        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(data){

                if(data.trim()=="OK")
                {
                    alert("添加成功!");
                }
                else
                {
                    alert("添加失败!");
                }
            }

            });

        })

});
</script>

add页面

<?php
include("../DBDA.php");
$db = new DBDA();

$uid = $_POST["uid"];
$js = $_POST["juese"];

$juse = explode("|",$js);

$bs = true;

//清空该用户具有的所有角色
$sqldel = "delete from UserInJueSe where UserId = ‘{$uid}‘ ";
if(!$db->Query($sqldel,0))
{
    $bs = $bs && false;
}

//添加角色信息
foreach($juse as $v)
{
    $sql = "insert into UserInJueSe values(‘‘,‘{$uid}‘,‘{$v}‘)";
    if(!$db->Query($sql,0))
    {
        $bs = $bs && false;
    }
}

if($bs)
{
    echo "OK";
}
else
{
    echo "NO";
}

seljuese页面

<?php
include("../DBDA.php");
$db = new DBDA();

$uid = $_POST["uid"];

$sql = "select JueSeId from UserInJueSe where UserId = ‘{$uid}‘";

echo $db->StrQuery($sql);
时间: 2024-08-24 20:50:25

PHP 权限管理的相关文章

Oracle 表空间和用户权限管理

一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻辑结构的一个重要组件. 表空间可以存放各种应用对象,如表.索引等. 而每一个表空间由一个或多个数据文件组成. 1. 表空间的分类 表空间可分为3类: 永久性表空间:一般保存表.上天.过程和索引等数据.system.sysaux.users.example表空间是默认安装的. 临时性表空间:只用于保存

linux文件权限管理与ACL访问控制列表

一.文件属性 1.文件属性: 文件属性操作 chown : change owner  ,设置文件所有者 chgrp : change group  ,设置文件的属组 文件属主修改: chown 格式:chown [OPTION]- [OWNER][:[GROUP]] FILE- 用法: OWNER OWNER:GROUPNAME    (同时修改属主.属组) :GROUPNAME                (默认属主,修改属组) ( 命令中的冒号可用.替换:) chown  –refere

mysql的权限管理

mysql的权限管理1.授权的基本原则   只授予满足要求的最小权限,但要注意使用户能够授权给别的用户(with grant option)   对用户设置登录的主机限制   删除没有密码的用户   满足密码的复杂度,设置较为复杂的密码   定期检查用户的权限,适当收回不需要的权限   2.给用户授权  mysql> grant all on *.* to 'root'@'10.0.5.150' identified by 'aixocm';  mysql> flush privileges;

Oracle权限管理详解

转载--CzmMiao的博客生活 Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级.Role 角色级.这些权限可以授予给用户.特殊用户public或角色,如果授予一个权限给特殊用户"Public"(用户public是oracle预定义的,每个用户享有这个用户享有的权限),那么就意味作将该权限授予了该数据库的所有用户.对管理权限而言,角色是一个工具,权限能够被授予给一个角色,角色也能被授予给另一个角

浅析Linux系统下用户与权限管理

Linux作为一种多用户多任务操作系统,在日常的使用中不可避免地要划分出一个角色的概念来管理和使用计算机,这个角色与每一个计算机使用者关联,在Linux中称这种角色为用户.而在每一个用户使用计算机的过程中,又必然存在对有限计算机资源使用的限制性,那么操作系统就必须提供一种途径来保证每个用户独立.合理的使用计算机. 一.用户和用户组管理   (一)用户及用户组相关基本概念  用户:泛指计算机的使用者.用计算机可识别的用户ID(UID,user id)标识. 用户组:用户容器,用来将多个用户合并为一

centos用户权限管理

进程是以其发起者的身份运行的,它对文件的访问权限,取决于此进程的用户的权限.在linux操作系统启动的过程中,为了能够让后台进程或服务类进程以非管理员的身份运行,通常需要为此创建多个普通用户,而这类用户从不需要登录系统,仅让其他进程以他的身份运行,从而仅能获取普通权限的用户.为此这部分用户称系统用户.同时用户与组密不可分.进程的运行是以它的属主(又称,发起者)来访问的.它能访问资源的权限取决于发起者对某个资源的访问权限.下面是从用户和授权两个角度来讲解用户授权管理. 用户管理 用户按类别分管理员

实现业务系统中的用户权限管理--实现篇

在设计篇中,我们已经为大家阐述了有关权限管理系统的数据库设计,在本篇中,我们将重点放在其实现代码部分.为了让你能够更直接更有效的看到全部动作的代码,我们使用"动作分解列表"的方式来陈述每个动作以及相关资源. 实现权限管理功能的动作 动作分解 动作名 相关表名 操作集类型 (S,U,I,D,SQL) 表单 模组 字符资源 是否分页? 返回提示? 权限检测 权限初始化安装 setup 无 无 无 setup setupok 否 否 否 显示添加管理组界面 addnewgroup 无 无 a

RBAC权限管理

RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限. 这样,就构造成“用户-角色-权限”的授权模型.在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系.(如下图) 角色是什么?可以理解为一定数量的权限的集合,权限的载体.例如:一个论坛系统,“超级管理员”.“版主”都是角色.版主可管理版内的帖子.可管理版内的用户等,这些是权限.要给某个用户授予这些权限,不需要直接

Mongodb增加权限管理

 前言: 随着列式存储理念的成熟,越来越多的开发者开始接纳mongodb,hbase这类大储存的分布式列式数据库.特别是mongodb的这种快速搭建,快速使用特点,使其得到更多人的青睐.本人主要通过官网说明针对mongodb权限配置做一个测试与实践. step1:无验证启动mongod服务 mongod --port 27017 --dbpath /data/db1 step2:客户端mongo无密码连接并设置超级用户(用于admin登录) mongo --port 27017 use admi

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('密码'),'',