权限管理1:对用户角色的增删改
<!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" /> <script src="../jquery-1.11.2.min.js"></script> <title>无标题文档</title> </head> <body>
<?php include("../DBDA.class.php"); $db = new DBDA ?>
<br /> <div>请选择用户: <select id="sel">
<?php $sql = "select * from users"; $attr = $db->Query($sql); foreach($attr as $v) { echo "<option value='{$v[0]}'>{$v[2]}</option>"; } $fuid = $attr[0][0];//取到第一个人的用户名 ?>
</select> <br /> <div><br />请选择角色:<br /><br />
<?php $sjuese = "select * from juese"; $ajuese = $db->Query($sjuese); foreach($ajuese as $v) { $sxz = "select count(*) from userinjuese where userid='{$fuid}' and jueseid='{$v[0]}'";//userid='{$fuid}'刷新网页显示的名字。jueseid='{$v[0]}'每个复选框的属性值。 $n = $db->StrQuery($sxz); if($n>0)//遍历出来的用户名中有的角色就加上选中状态。 { echo "<input type='checkbox' class='juese' checked='checked' value='{$v[0]}' />{$v[1]} ";//让刷新页面出来的用户的角色默认是选中状态 } else { echo "<input type='checkbox' class='juese' value='{$v[0]}' />{$v[1]} ";//{$v[0]}角色代号,没有的角色就世界输出。 } } ?>
</div> </div> <br /> <input type="button" value="保存" id="btn" /> </body>
<script type="text/javascript"> $("#sel").change(function(){ var uid = $("#sel").val(); $.ajax({ url:"chuli.php", data:{uid:uid}, type:"POST", dataType:"TEXT", success: function(data){ var js = data.split("|"); var ck = $(".juese") ck.prop("checked",false);//先清除所有的选中状态 //让等于返回角色代号的选中 for(var i = 0;i<ck.length;i++) { if(js.indexOf(ck.eq(i).val())>-1)//判断checkbos里面的值是不是在数组里面出现了 { ck.eq(i).prop("checked",true);//如果出现,说明这个人有这个角色,就让角色选中。 } } } }) }) $("#btn").click(function(){ var uid = $("#sel").val(); //角色代号 var ck = $(".juese"); var str =""; for(var i=0;i<ck.length;i++) { if(ck.eq(i).prop("checked")) { str=str+ck.eq(i).val()+"|"; } } str = str.substr(0,str.length-1); $.ajax({ url:"add.php", data:{uid:uid,juese:str}, type:"POST", dataType:"TEXT", success: function(){ alert("保存成功"); } }); }) </script>
</html>
chuli.php
<?php include("../DBDA.class.php"); $db = new DBDA(); $uid = $_POST["uid"]; $sql = "select jueseid from userinjuese where userid='{$uid}'"; echo $db->StrQuery($sql);
add.php
<?php include("../DBDA.class.php"); $db = new DBDA(); $uid = $_POST["uid"]; $juese = $_POST["juese"]; $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); }