权限管理界面

<!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>
<?php
include("DBDA.php");
$db = new DBDA(); //查询用户表,查出所有数据
$suser = "select * from users";
$auser = $db->Query($suser); //查询角色表,查出所有数据
$sjuese = "select * from juese";
$ajuese = $db->Query($sjuese);
?>
</head> <body>
<h1>权限管理:用户对应角色管理</h1>
<div>
请选择用户:
<select id="user">
<?php
foreach($auser as $v)
{
echo "<option value='{$v[0]}'>{$v[2]}</option>";
}
?>
</select>
</div>
<br />
<div>
请选择相应的角色:
<?php
foreach($ajuese as $v)
{
echo "<input type='checkbox' class='juese' value='{$v[0]}' /> {$v[1]} &nbsp;&nbsp;";
}
?>
</div>
<br />
<div><input type="button" value="保存" id="btn" /></div> </body>
<script type="text/javascript">
$(document).ready(function(e) { JSChecked(); $("#btn").click(function(){ //取人员的选中值
var uid = $("#user").val(); //取复选框的所有选中值
var ck = $(".juese"); var js = ""; for(var i=0;i<ck.length;i++)
{
if(ck[i].checked)
{
js = js+ck.eq(i).val()+"|";
}
} js = js.substr(0,js.length-1); $.ajax({
url:"quanxianchuli.php",
data:{uid:uid,js:js},
type:"POST",
dataType:"TEXT",
success: function(data){
if(data.trim()=="OK")
{
alert("添加成功!");
}
else
{
alert("添加失败!");
}
} }); }) $("#user").change(function(){ JSChecked(); }) });
function JSChecked()
{
//取选中的用户名
var uid = $("#user").val();
$.ajax({
url:"quanxianchuli2.php",
data:{uid:uid},
type:"POST",
dataType:"TEXT",
success: function(data){ //清空原有选中信息
$(".juese").prop("checked",false); //找到该人员对应的角色代号数组
var attr = data.split("|"); //找到所有的checkbox
var ck = $(".juese"); //遍历每个复选框,设置选中
for(var i=0; i<ck.length;i++)
{
var dh = ck.eq(i).val();
//$.inArray(dh,attr) 判断元素是否在数组中,如果在返回所在位置的索引,如果不在返回-1 if($.inArray(dh,attr)>=0)
{
ck.eq(i).prop("checked",true);
}
} }
});
}
</script>
</html>
<?php
include("DBDA.php");
$db = new DBDA(); $uid = $_POST["uid"];
$juese = $_POST["js"];
//将传入的角色字符串拆分为数组
$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);
} echo "OK";
<?php
include("DBDA.php");
$db = new DBDA(); $uid = $_POST["uid"]; $sql = "select jueseid from userinjuese where userid='{$uid}'";
echo $db->StrQuery($sql);

登陆界面

<!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="quanxianchuli3.php" method="post">
<div>用户名:<input type="text" name="uid" /></div>
<div>密码:<input type="password" name="pwd" /></div>
<div><input type="submit" value="登录" /></div>
</form>
</body>
</html>
<?php
session_start();
include("DBDA.php");
$db = new DBDA(); $uid = $_POST["uid"];
$pwd = $_POST["pwd"]; $sql = "select pwd from users where uid='{$uid}'";
$mima = $db->StrQuery($sql); if($pwd==$mima && $uid != "" && $pwd != "")
{
$_SESSION["uid"]=$uid;
header("location:quanxian3.php");
}
else
{
echo "登录失败!";
}

主页面

<!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>
<style type="text/css">
*{ margin:0px auto; padding:0xp}
#menu{ width:90%; height:35px}
.list{ width:120px; height:35px; margin-left:5px; background-color:#60C; color:white; font-family:微软雅黑; font-size:16px; font-weight:bold; text-align:center; line-height:35px; vertical-align:middle; float:left}
</style>
</head>
<?php
session_start();
include("DBDA.php");
$db = new DBDA(); if(empty($_SESSION["uid"]))
{
header("location:quanxian2.php");
exit;
}
$uid = $_SESSION["uid"]; //根据用户名查用户对应角色表,找到相应的角色代号
$sjs = "select jueseid from userinjuese where userid='{$uid}'";
$attr = $db->Query($sjs); //根据角色代号查找功能
$gn = array(); //存放功能的二维数组
$onegn = array();//存放功能的一维数组 foreach($attr as $v)
{
$sgn = "select ruleid from juesewithrules where jueseid='{$v[0]}'";
$agn = $db->Query($sgn);
$gn = array_merge($gn,$agn);
} //将二维数组转化为一维数组
foreach($gn as $v)
{
$onegn[] = $v[0];
} //对功能的一维数组进行去重
$onegn = array_unique($onegn); ?> <body>
<h1>主页面</h1> <div id="menu">
<?php
foreach($onegn as $v)
{
$sname = "select name from rules where code='{$v}'";
$name = $db->StrQuery($sname);
echo "<div class='list'>{$name}</div>";
}
?>
</div>
</body>
</html>

php 审核管理的更多相关文章

  1. MySQL自动化审核平台部署说明

    背景: 关于MySQL的审核的重要性就不说明了,本文的自动化审核是通过Inception和SQLAdvisor实现的,具体的使用可以看它们各自的说明文档.这里大致介绍下如何部署和使用它们,其实该文章也 ...

  2. Java生鲜电商平台-库存管理设计与架构

    Java生鲜电商平台-库存管理设计与架构 WMS的功能: 1.业务批次管理 该功能提供完善的物料批次信息.批次管理设置.批号编码规则设置.日常业务处理.报表查询,以及库存管理等综合批次管理功能,使企业 ...

  3. Res_Orders_01需求分析

    一.背景及好处 为了提高餐厅的运营效率,增强餐厅各部门间的配合,减少顾客到店后的点餐.等餐及结算过程消耗的时间,降低服务员点餐失误率,进一步提高餐厅管理人员对菜品.资金的管理以及更好的掌握餐厅的全局运 ...

  4. 门店 车销 批发送货 商超 快销专用扫描打印开单手持PDA移动销售管理系统

    门店 车销 批发送货 商超 快销专用扫描打印开单手持PDA移动销售管理系统的详细介绍 一. 以PDA等移动终端为媒介,随时随地掌握门店信息. 二. 后台集成了数据统计.多指标分析.销售.库存.会员管理 ...

  5. 点餐系统web版功能需求

                餐厅到店点餐系统需求分析 (版本v1.0.0)               成文信息 主题词: 需求分析 作  者: 14商软ETC 文档类别: 审  核: 批  准: 文档性 ...

  6. Res_Orders_01之需求分析

    Res_Orders_01之需求分析 一.背景及好处 为了提高餐厅的运营效率,增强餐厅各部门间的配合,减少顾客到店后的点餐.等餐及结算过程消耗的时间,降低服务员点餐失误率,进一步提高餐厅管理人员对菜品 ...

  7. discuz X2.0教程]教你快速了解Discuz!程序文件功能,修改文件从此不用再求人

    x3.x数据字典 http://faq.comsenz.com/library/database/x3/x3_index.htm 先从根目录开始,根目录文件一般都是入口,即执行具体功能的代码一般不在这 ...

  8. MallBuilder 多用户商城管理系统 v5.8.1.1

    MallBuilder是一款基于PHP+MYSQL的多用户网上商城解决方案.利用MallBuilder可以快速建立一个功能强大的类似京东商城.天猫商城.1号店商城的网上商城,或企业.行业化.本地化和垂 ...

  9. 8月1日起,这些新政将影响移动互联网产业-b

    今天,国家互联网信息办公室发布<移动互联网应用程序信息服务管理规定>.这项规定将从8月1日起生效,其中侧重对两类玩家提出了监管意见,他们分别是: 移动互联网应用程序提供者,即提供信息服务的 ...

随机推荐

  1. BZOJ3196——二逼平衡树

    1.题目大意:给你一个序列,有5种操作,都有什么呢... 1> 区间第k小 这个直接用二分+树套树做 2> 区间小于k的有多少 这个直接用树套树做 3> 单点修改 这个直接用树套树做 ...

  2. Vim编辑器运用的五个技巧

    导读 如今 Vim 是每个人最喜欢的 Linux 文本编辑器,也是开发者和系统管理者最喜爱的开源工具.大多数人只是熟悉Vim的最最基本的操作,只能在终端使用 Vim 修改文本,但是它并没有任何一个我想 ...

  3. static小结

    1.隐藏:编译多个文件时,所有未加static的全局变量.全局函数都具有全局可见性. 如果加了static,就会对其他源文件隐藏,利用这一特性可以在不同文件中定义相同的 变量名或函数名,而不用担心冲突 ...

  4. JS中try....catch

    1.事情还有得挽回,换条路走try { 执行某个逻辑} catch (e) { 出问题,换个逻辑执行} 2.体面的退出try { 正常流程} catch (e) { 弹个框告诉用户不好意思出了点问题 ...

  5. BZOJ 4547: Hdu5171 小奇的集合

    Sol 首先,考虑这个要怎么搞...让总和最大的方法就是选出当前集合中最大的两个数相加放入集合中就可以了,证明非常简单,当前集合的和为x,它的和只会一直往后增加,所以只需要找到最大的两个数的和加入便是 ...

  6. React 源码解读参考,理解原理。

    Rubix - ReactJS Powered Admin Template 文档:   http://rubix-docs.sketchpixy.com/ ===================== ...

  7. 【leetcode】Fraction to Recurring Decimal

    Fraction to Recurring Decimal Given two integers representing the numerator and denominator of a fra ...

  8. PDF.js

    http://www.linuxidc.com/Linux/2015-06/118728.htm http://blog.csdn.net/xiangcns/article/details/42089 ...

  9. apache官网怎样下载apache HTTP Server服务器

    我相信有些朋友刚用apache服务器时,都希望从官网上下载,而面对着官网上众多的项目和镜像以及目录,也许有点茫然.下面是具体步骤 第一步:打开apache官网 第二步:点击右上角Download,出现 ...

  10. storyboard在ios模拟器无法显示的问题

    一.问题描述 1.在原有项目新建一个名称为test的storyboard类型的文件. 2.test.storyboard添加View Controller,并设置View Controller下Vie ...