PHP语言 -- 权限

权限管理页面body>

<h1>权限管理</h1>
<div>请选择用户:
<select id="user">
<?php
include("DBDA.php");

$db= new DBDA();

$sql ="select * from users";

$attr = $db->Query($sql);

for($i=0;$i<count($attr);$i++)
{
echo "<option value=‘{$attr[$i][0]}‘>{$attr[$i][2]}</option>"
}
?>
</select>
</div>

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

<div>
<?php

$sqlj="select * from JueSe";

$attrj = $db->Query($sqlj);

for($i=0;$i<count($attrj);$i++)
{
 echo "<input class=‘js‘ type=‘checkbox‘ value=‘{$attrj[$i][1]}‘ />{$attrj[$i][1]}&nbsp";
}

?>
</div>
<div><input id="sure" type="button" value="确定" /></div>

</body>

<script type="text/javascript">

$(document).ready(function(e){

ShowJs();

$("#user").change(function(){ShowJs();})

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

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

var js="";

var cks = $(".js");

for(var i=0;i<cks.length;i++){if(cks.eq(i)[0].checked){js=js+cks.eq(i).val()+"|";}}js = js.substr(0,js.length-1);

$.ajax({url:"add.php",data:{uid:uid,juese:js},type:"POST",datatype:"TEXT",success:function(data){

alert(data);

}

});

})

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

$.ajax({url:"JueSeChuLi.php",data:{uid:uid},type:"POST",dataType:"TEXT",success:function(data){

var ck = $(".js");for(var j=0;j<ck.length;j++){ck.eq(j).removeAttr("checked");}

if(data.trim() !="")  //trim()去除空格{var hang = data.split("|");for(var i =0;i<hang.length;i++){var lie = hang[i].split("^");

var ck = $(".js");

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

}}

}});
}

});</script>

JueSeChuLi.php

<?php

$uid = $_POST["uid"];

include("DBDA.php");

$db = new DBDA();

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

echo $db->StrQuery($sql);

add.php

$uid = $_POST["uid"];
$juese=$_POST["juese"];
include("DBDA.php");

$db = new DBDA();

$sqld = "delete from UserInJueSe where UserId=‘{$uid}‘";

$db->Query($sqld,0);

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

$isok = true;

for($i=0;$i<count($js);$i++)
{
$sql = "insert into UserInJueSe values(‘‘,‘{$uid}‘,‘{$js[$i]}‘)";

$isok = $isok && $db->Query($sql,0);
}

if($isok)
{
echo "ok";
}
else
{
echo "no";
}

loginchuli.php

<?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}‘";

if($db->StrQuery($sql)=="1")
{
$_SESSION["uid"]=$uid;
header("location:main.php")
}
else
{
header("location:login.php");
}

main.php

<body>
<?php
session_start();

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

include("DBDA.php");

$db -> new DBDA();
//根据用户名查角色

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

$attrj =$db->Query($sqlj);

//存放功能代号的数组
$attr = array();

for($i=0;$i<count($attrj);$i++)
{
//根据角色查功能
$js = $attrj[$i][2];

$sqlr = "select RuleId from JueSeWithRules where JueSeId=‘{$js}‘";

$strr = $db->StrQuery($sqlr);

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

//将数组合并
$attr = array_merge($attr,$attrr);
}

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

//根据功能代号查功能名称并显示在div里面
for($j=0;$j<count($attr);$j++)
{
$sqlg = "select Name from Rules where Code=‘{$attr[$j]}‘";
$name = $db->StrQuery($sqlg);
echo "<div class =‘menu‘>{$name}</div>"
}

?>
</body>
时间: 2024-10-28 18:44:11

PHP语言 -- 权限的相关文章

Mysql查询 主从复制及引擎管理

禁用邮件通知: vi /etc/profile 在末尾添加 #禁止邮件提示 unset MAILCHECK 数据库部署及引擎管理 数据库简介 数据库技术构成1.数据库系统 DBS A.数据库管理系统(DataBase Management System, DBMS): SQL(RDS): ORACLE.Oracle MySQL.MariaDB.Percona server.DB2 NoSQL: Redis.MongoDB.MemcacheB.DBA数据库管理员 2.SQL语言(Structure

ASP.NET 让无码编程不在是梦 -.NET通用平台、通用权限、易扩展、多语言、多平台架构框架

先拿出我半前年前平台的设计初稿,经过半年的努力我已经完成了该设计稿的所有功能.并且理念已经远远超出该设计稿. 下面是一些博友对我贴子的评价: 1.楼主,想法很美好,现实很骨感,我们公司就有一套你说的这样的平台,界面都是用XML配置出来的,虽然开发效率很高,但只能做固定版式的系统,有任何版式的修改,几乎都是不可能的,高度的封装,丧失了灵活性. 2.虽然不看好,但楼主愿意试试,我还是支持的. 我对他们的评价的回复是请给我半年时间,我会证明给大家看,所以我遵守承诺来此水一贴. Landa.Best平台

易语言等软件自动获取管理员权限,在64位Windows7系统非管理员帐户中执行

昨天有易语言开发者向我求助,说他用易语言编译的32位程序软件,发布给64位操作系统Win 7用户使用,因为该用户确定没有管理员权限,而程序启动时又要求必须输入管理员密码,如此陷入困境. 目标企业用户管理严格,要求为普通用户分配管理员权限是不切实际的,只能开发人员从软件开发的角度在技术上解决. 我听到这个问题后,第一感觉是微软用户帐户控制(UAC)引发的,估计通过给 exe 添加特定的 manifest 资源应该可以解决.于是我给了他一段代码,让他用 ResHacker 之类的软件添加到软件里面去

C++语言笔记系列之十四——继承后的访问权限

1.析构函数不继承:派生类对象在析构时,基类析构函数的调用顺序与构造函数相反. 注:派生类对象建立时要调用基类构造函数,派生类对象删除时要调用基类析构,顺序与构造函数严格相反. 2.例子 example 1 #include <iostream.h> #include <math.h> class Point { public: Point(double a, double b, doule c) { x = a; y = b; z = c; } double Getx() {re

Java语言中的权限修饰符

1.Java语言中的权限修饰符主要包括private,public ,default , protected ,这些修饰符控制着对类和类的成员变量以及成员方法的访问. 用权限修饰符修饰变量时的语法格式: puclic 类型  属性0; private 类型 属性1; private 类型 属性2; 类型 属性3;(default权限修饰符一般不写) 如果一个类的成员变量被修饰为private的时候,则该成员变量只能在本类中使用,在子类中是不可见的.如果非要调用,通过get/set方法就可以获取.

纯JAVA环境获取APK信息(包名,版本,版本号,大小,权限...),纯JAVA语言编写PC端获取APK信息

纯JAVA环境获取APK信息:包名,版本,版本号,大小,权限... 纯Java环境获取APK信息需要两个包:AXMLPrinter2.jar 跟jdom.jar,用于反编译XML和解析XML的 项目目录 这个类是获取APK信息的 public class ApkUtil { private static final Namespace NS = Namespace.getNamespace("http://schemas.android.com/apk/res/android"); @

基于java语言的给cube添加custom view来实现权限控制

今天是农历2014年的最后一个工作日了,在这里提前祝大家新年快乐.羊年大吉!当然本人今天也拿出来点儿真东西,做为献给大家的新年礼物,依次共勉. 下文主要讲述的是使用Java代码来完成对cube基于部门维度创建custom view,实现角色级别的权限控制 第一部分:通用数据库设计 1:事实表(订单分析)--存放departkey关联部门 2:维度表(部门) 3:赋权表 role_id以及对应的role_name,来源于cognos cjap认证中的角色表depart_id以及对应的depart_

C语言,如何检查文件是否存在和权限的信息

按功能access,头文件io.h(linux通过使用unistd.h int   access(const   char   *filename,   int   amode); amode參数为0时表示检查文件的存在性,假设文件存在.返回0.不存在,返回-1. 这个函数还能够检查其他文件属性: 06     检查读写权限 04     检查读权限 02     检查写权限 01     检查运行权限 00     检查文件的存在性 在UNIX和VC下实验成功. 优点是 fopen(..,"r

C语言open()和creat()函皇冠数体育平台出租创建文件时,文件权限设置相关

皇冠体育平台出租haozbbs.com Q1446595067 open()和creat()创建文件时,文件权限说明 首先了解一下 umask 命令,该命令用来设置限制新文件权限的掩码.当新文件被创建时,其最初的权限由文件创建掩码决定.简单地来说,umask和open()及creat()函数的权限码(mode_t mode参数)共同决定你的新建文件的权限.具体关系为mode & ~umask. 下面通过简单的程序来验证它们之间的关系.Linux C 由于open()和creat()创建文件,结果