权限管理界面

<!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. 学习笔记:调用js文件冲突问题解决方案

    之前自己动手做了一个小网站,在实现过程中遇到了一个关于js文件调用冲突的问题. 具体问题描述如下:在index.html文件中引用了两个js文件,单独添加banner.js或者focus_pic.js ...

  2. 日期的js插件DatePicker

    官网:http://my97.net/dp/index.asp 百度网盘:http://pan.baidu.com/s/1c20y7uC 只显示月份 <input name="cost ...

  3. leetcode:32 最长有效括号

     题目: 给一个包含了'(' 和 ')'的字符串,求出其中最长有效括号的长度. 做题情况:自己做出来,但做了较长的时间. 思路:可以算得穷举法的时间复杂度为O(n^3).虽然这题求的是最长的长度,但是 ...

  4. 4.9---二叉树路径和(CC150)

    //注意,1,要判断null:2,要注意ArrayList直接复制会被一起改变.要通过new的方式来操作.public class Solution { public static void main ...

  5. hadoop学习过程中一系列问题

    12---修改host .修改主机名5.1 修改当前会话的主机名sudo hostname SY-0217查看当前会话的主机名hostname默认是我装Linux 虚机时输入的名字Ubuntu5.2 ...

  6. MySQL表结构及数据的备份

    1.Navicat for MySQL 选择要保存的表,右键转储SQL文件,导出的sql文件中包括表的定义和表的数据两部分. 其他办法: (1) create table dust select * ...

  7. 百度云+ KeePass 网络同步你的密码

     百度云+ KeePass 网络同步你的密码   百度云一个目前不限流量不限格式能直链的网盘,速度在我这里很快,难得了!KeePass(小众介绍过 KeePass.) 是一个免费开源的密码管理类软件, ...

  8. php之aop实践

    aop简介 AOP为Aspect Oriented Programming的缩写,意为:面向切面编程(也叫面向方面),可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能 ...

  9. ASP.NET 上的 Async/Await 简介

    原文链接 大多数有关 async/await 的在线资源假定您正在开发客户端应用程序,但在服务器上有 async 的位置吗?可以非常肯定地回答“有”.本文是对 ASP.NET 上异步请求的概念性概述, ...

  10. BIOS开启虚拟化

    启动时根据提示按del 键按 F10 键以配置 BIOS使用箭头键滚动到“System Configuration”选择“Virtualization Technology”,然后按 Enter 键选 ...