在我们的实际php开发中对用户做权限的管理是很重要的,给不同的用户设定不同的权限,我们必然会使用到mysql数据库,本篇文章我们就来讲解一下php是如何结合mysql来实现权限管理的
今天主要来实现一个权限管理系统,它主要是为了给不同的用户设定不同的权限,从而实现不同权限的用户登录之后使用的功能不一样,首先先看下数据库



立即学习“PHP免费学习笔记(深入)”;


总共有5张表,qx_user,qx_rules和qx_juese 3张表与另外2张表形成"w"型的关系,也是比较常见的一种权限数据库的方式,首先先做权限的设定,也就是管理层给不同用户设定不同权限。
guanli.php
无标题文档 用户与角色管理
请选择用户:
请选择角色: Query($sjs); foreach($ajs as $v) { echo "{$v[1]} "; } ?>
chuli.php
StrQuery($sql);
break;
case 1:
$uid = $_POST["uid"];
$juese = $_POST["juese"];
$sdel = "delete from qx_uij where useid='{$uid}'";
$db->Query($sdel,0);
$arr = explode("|",$juese);
foreach($arr as $v)
{
echo $v;
$sql = "insert into qx_uij values('','{$uid}','{$v}')";
$db->Query($sql,0);
}
echo "OK";
break;
}实现的效果,如图:

我可以选择给哪个用户设置权限,给他一个什么角色,可以是一个,也可以多个,点击确定就在数据库中赋予了该权限。
例如:马七本身有前台和市场2个角色

现在,删除前台,增加财务

BJXShop网上购物系统是一个高效、稳定、安全的电子商店销售平台,经过近三年市场的考验,在中国网购系统中属领先水平;完善的订单管理、销售统计系统;网站模版可DIY、亦可导入导出;会员、商品种类和价格均实现无限等级;管理员权限可细分;整合了多种在线支付接口;强有力搜索引擎支持... 程序更新:此版本是伴江行官方商业版程序,已经终止销售,现于免费给大家使用。比其以前的免费版功能增加了:1,整合了论坛
那我们看看数据库添加了没有

马七那项已经改了,j003和j004就是市场和财务角色。
接下来做的是登录某个账号,查看自己的职能
login.php
无标题文档 登录页面
logincl.php
StrQuery($sql);
if($mm==$pwd && !empty($pwd))
{
$_SESSION["uid"]=$uid;
header("location:main.php");
}main.php
无标题文档 主页面
Query($sjs); //定义一个存放功能代号的数组 $arr = array(); //根据角色代号查功能代号 foreach($ajs as $vjs) { $jsid = $vjs[0]; //角色代号 $sgn = "select ruleid from qx_jwr where jueseid='{$jsid}'"; $strgn = $db->StrQuery($sgn); $agn = explode("|",$strgn); foreach($agn as $vgn) { array_push($arr,$vgn); } } //去重,显示 $arr = array_unique($arr); foreach($arr as $v) { $sql = "select * from qx_rules where code='{$v}'"; $attr = $db->Query($sql); $attr[0][0]; $attr[0][1]; echo "{$attr[0][1]}
"; } ?>
完成的效果,如图:

显示李四的职能是:

看看数据库的是不是一样的:


发现结果是一样的。这样权限管理就做完了。大家可以好好看看,练习练习,在我们今后的开发中会有很大的帮助的!










