权限:   1,后台分配角色     角色对应权限    2,各用户通过登录页面登录    查看到各自的权限

五个页面   加引入一个jquery-1.11.2.min.js

1,guanli.php  (后台管理页面,分配角色)

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>用户与角色权限管理</title>
<script type="text/javascript" src="jquery-1.11.2.min.js"></script>
</head>
<body>
<h1>权限管理</h1>
<div>请选择用户:
<select id="user">
<?php
include("../DBDA.php");
$db=new DBDA();
$sqlu="select * from Users"; $str=$db->StrQuery($sqlu,1,"mydb2"); $hangu=explode("|", $str);
for ($i=0; $i <count($hangu) ; $i++) {
list($UserName,$Password,$Name)=explode("^",$hangu[$i]);
echo "<option value='{$UserName}'>{$Name}</option>";
} ?>
</select><br><br>
<div>请选择角色:</div><br>
<div> <?php
$sqlj="select * from JueSe";
$strj=$db->StrQuery($sqlj,1,"mydb2");
$hangj=explode("|", $strj);
for ($i=0; $i <count($hangj) ; $i++) {
list($code,$name)=explode("^", $hangj[$i]);
echo "<input type='checkbox' value='{$code}' class='juese'/>{$name}&nbsp;"; } ?>
</div><br>
<div><input type="button" id="sure" value="确定"></input></div> </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 i = 0; i < ckall.length; i++) {
ckall.removeAttr("checked");
}
$.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()+"|";
}
}
//alert(str.substr(0,str.length-1));
str=str.substr(0,str.length-1);
$.ajax({
url:"chuliadd1.php",
data:{uid:uid,str:str},
type:"POST",
dataType:"TEXT",
success:function(data){
if (data=="OK") {
alert("操作成功!");
}
} });
})
});
</script>
</html>

2,chulijuese.php(判断数据库中的数据然后确定checkbox是否可以被选中 角色前面的框)

 <?php
include("../DBDA.php");
$uid=$_POST["uid"];
$db=new DBDA();
$sql="select * from UserInJueSe where UserId='{$uid}'";
$str=$db->StrQuery($sql,1,"mydb2"); echo $str; ?>

3,chuliadd1.php  (从guanli页面传过值来,先清掉原有的角色选中,然后根据传来的值重新选中)

 <?php
include("../DBDA.php");
$uid=$_POST["uid"];
$str=$_POST["str"]; $db=new DBDA(); $sqld="delete from UserInJuese where UserId='{$uid}'"; $fh=$db->StrQuery($sqld,0,"mydb2"); if ($fh="OK") {
$juese=explode("|", $str);
for ($i=0; $i <count($juese) ; $i++) {
$sql="insert into UserInJueSe values ('','".$uid."','".$juese[$i]."')";
$db->StrQuery($sql,0,"mydb2");
}
echo "OK";
}
?>

4,denglu.php (数据库中的人员根据姓名和密码登录)

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登录页面</title>
</head>
<body>
<h1>登录页面</h1>
<form action="main.php" method="post">
用户名:<input type="text" name="uid" id="uid"></input><br><br>
密&nbsp;&nbsp;&nbsp;&nbsp;码:<input type="text" name="pwd" id="pwd"></input><br>
<input type="submit" value="登录"></input>
</form>
</body>
</html>

5,main.php(显示各个角色具有的各自权限)

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>主页面</title>
</head>
<body>
div
<?php
session_start();
include("../DBDA.php");
$db=new DBDA();
$uid=$_POST["uid"];
$pwd=$_POST["pwd"]; $sql="select count(*) from Users where Username='".$uid."' and PassWord ='".$pwd."'";
$str=$db->StrQuery($sql,1,"mydb2");
if ($str==1) {
$_SESSION["uid"]=$uid;
}
else{
header("Location:denglu.php");
}
?>
<div style="width:1000px; height: 35px; background-color:blue; color: white; font-size:25px;">
<div style="width: 150px; height: 35px; vertical-align: middle; line-height: 35px;text-align: center; float: left;">权限管理</div>
<?php
$sqlj="select * from UserInJueSe where UserId='{$uid}'";
$strj=$db->StrQuery($sqlj,1,"mydb2");
$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->StrQuery($sqlr,1,"mydb2");
$hangr=explode("|", $strr); $xianshi=array_merge($xianshi,$hangr); }
$xianshi=array_unique($xianshi); for ($i=0; $i < count($xianshi); $i++) {
$xianshi[$i];
$sqlname="select * from Rules where Code='".$xianshi[$i]."'";
$strname=$db->StrQuery($sqlname,1,"mydb2");
list($code,$name)=explode("^",$strname);
echo "<div style='width: 150px; height: 35px; vertical-align: middle; line-height: 35px;text-align: center; float:left;'>{$name}</div>";
} ?>
</div>
</body>
</html>

lisi的权限:

zhangsan的权限:

2016/04/26 权限 数据库mydb2 五个表 分别是 1,用户 2,角色 3,权限 4,用户对应的角色 5,角色对应的权限的更多相关文章

  1. 2016/04/26 流程 数据库lcdb 四个表 1,用户表users 2,流程表(设定有哪些流程)liucheng 3,流程发起者表(记录谁发起到哪里) 4,流程经过的人员表 flowpath (order排序)

    流程:      十一 个页面 1,denglu.php(登录) <!DOCTYPE html> <html lang="en"> <head> ...

  2. Mysql数据库(五)表记录的检索

    一.基本查询语句 二.单表查询 1.查询所有字段 mysql> SELECT * FROM tb_bookinfo; +----------+-----------+--------+----- ...

  3. ubuntu12.04:Mysql数据库:手动安装

    首先到mysql的下载中心上下载最新的tar.gz包: 1.在浏览器中输入http://www.mysql.com/downloads/ 进入mysql的下载中心,在这里有使用mysql开发的一些工具 ...

  4. v1.0.2-2017.04.26

    v1.0.2-2017.04.26 增加支付宝.微信查询接口 增加订单轮询工程 增加网关下单后发起订单轮询业务流程 v1.0.1-2017.04.05 修复分页乱码bug 增加支付密码字段.商户服务器 ...

  5. ubuntu18.04 安装mongodb 数据库

    工具: 系统:ubuntu18.04  64位 数据库:mongodb GUI:Robo 3T           描述:在win 下面使用Robo 3T  连接Mongodb 数据库 一. 安装mo ...

  6. http://stormzhang.com/opensource/2016/06/26/android-open-source-project-recommend1/

    转载自:http://stormzhang.com/opensource/2016/06/26/android-open-source-project-recommend1/ 推荐他的所有博文~ 图片 ...

  7. ubuntu16.04 下Mongo数据库搭建

    一 数据库安装 1.下载自己需要的数据库版本和系统,下载地址:https://www.mongodb.com/download-center/community . 本文下载的为ubuntu 16.0 ...

  8. ubuntu16.04安装mysql数据库

    安装 sudo apt-get install mysql-server(安装过程中按提示设置root密码) sudo apt-get install mysql-client sudo apt-ge ...

  9. 学习图像算法阶段性总结 (附一键修图Demo) 2016.04.19更新demo

    今天特别感慨,自己从决定研究图像处理,势必要做出一键修图算法. 经历了,三个多月的书籍积累,三个多月的算法调整以及优化. 人是一种奇怪的动物,当你做不到的时候,你以为做到了,自己会感觉很爽,很有成就感 ...

随机推荐

  1. wap学习记录

    针对移动端浏览器: 大部分的浏览器内核都是webkit内核,对h5和c3的支持非常好 库 国内比较流行的框架 : 妹子UI bootstrap中解决ie8以及以下的h5标签和媒体查询兼容问题的两个库分 ...

  2. apidoc利用代码注释书写文档

    个人博客同步文章 https://mr-houzi.com/2018/07/... apidoc是一款利用源代码中注释来创建RESTful Web API文档的工具.apidoc可用于C#,Go,Da ...

  3. js事件默认行为

    事件默认行为: 当一个事件发生的时候浏览器自己默认做的事情 怎么阻止? 当前这个行为是什么事件触发的,然后在这个事件的处理函数中使用 return false; 但是return false 阻止的是 ...

  4. 使用scrapy爬取suning

    # -*- coding: utf-8 -*- import scrapy from copy import deepcopy class SuSpider(scrapy.Spider): name ...

  5. Android API Guides 安卓API指导----第一部分:Introduction(介绍)

    第一部分: Introduction(介绍) 目录包含:APP  Fundamentals     (应用程序基础) Device   Compatibility(设备兼容性) System Perm ...

  6. 杭电 2553 N皇后问题 (dfs)

    Description 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上. 你的任务是,对于给定的N,求出有多少种合 ...

  7. [MVC]Ajax辅助方法

    在开始使用Ajax辅助方法前,必须在页面中载入jQuery以及jquery.unobtrusive-ajax.js文件才能正常执行. 为了让网站载入适当的JS函数库,必须先让Layout页面载入适当的 ...

  8. H5在ios弹窗状态下调起输入法后关闭输入法页面元素错位解决办法

    最近开发移动端,有个需求:点击退款弹出文本框和发送短信按钮,输入手机号码和验证码确定退款. 发现安卓手机没毛病,但是在ios手机上点击文本框调起输入法,此时点击完成或者关闭输入法就无法正常操作了,肉眼 ...

  9. zoj 2201 No Brainer

    No Brainer Time Limit: 2 Seconds      Memory Limit: 65536 KB Zombies love to eat brains. Yum. Input ...

  10. bzoj3875 【Ahoi2014】骑士游戏 spfa处理后效性动规

    骑士游戏 [故事背景] 长期的宅男生活中,JYY又挖掘出了一款RPG游戏.在这个游戏中JYY会 扮演一个英勇的骑士,用他手中的长剑去杀死入侵村庄的怪兽. [问题描述] 在这个游戏中,JYY一共有两种攻 ...