<?php
echo $uu=@array_sum(@$_POST['gr']);
?>
<form action="" method="POST">
ADD<input type="checkbox" name="gr[]" value=1 <?php echo $uu&1?"checked":null;?>>
UPD<input type="checkbox" name="gr[]" value=2 <?php echo $uu&2?"checked":null;?>>
LIS<input type="checkbox" name="gr[]" value=4 <?php echo $uu&4?"checked":null;?>>
DEL<input type="checkbox" name="gr[]" value=8 <?php echo $uu&8?"checked":null;?>>
<input type="submit" value="提交" />
</form>

<?php
mysql_connect("localhost","root","");
mysql_select_db("db99");
mysql_query("set names'UTF8'");
define('ADD', 1);
define('UPD', 2);
define('LIS', 4);
define('DEL', 8);
?>

<?php
include_once('config.php');
$sql="select * from `user_admin` as a,`user_group`
as b where a.`gro`=b.`sid` and a.`uname`=''";
$query=mysql_query($sql);
$rs=mysql_fetch_row($query);
if($rs[6]&ADD){
echo "有权限";
}else{
echo "无权限";
}
?>

这里主要使用了二进制的方法 这是一种思路,所以定义常量的时候 必须是2的N次方才行。
<?php
define('ADD', 1); //1 转化二进制
define('UPD', 2); //10
define('LIS', 4); //100
define('DEL', 8); //1000

$sy = ADD | UPD | LIS | DEL;
echo "所有权限" . decbin($sy);
$ny = $sy ^ (UPD | DEL);
echo "没有删除和更新权限" . decbin($ny);

在PHP中要判断一个数在某些数范围内就可以使用 & 运算符。
& 是位运算,不是 && 逻辑运算 (位运算符:& | ^ ~)
例如:7=4|2|1  ===》 $sy = 4|2|1
这里的或是指的可以能包含的内容值,在位运算里其实可以简单理解成 7=4+2+1,
用 & 来操作,可以知道7&4、7&2、7&1都是真的,而如果7&8则是假的。
我们还可以用^ 来从包含的值内去除:如 $ny = $sy ^ 2
这样一来,$ny 只有 4|1 如果做判断也就只有 $ny&4、$ny&1

Php会员权限的更多相关文章

  1. 开源 免费 java CMS - FreeCMS1.9 会员权限管理

    项目地址:http://www.freeteam.cn/ 会员权限管理 管理会员可使用的权限.会员在使用某一特定功能时,如投稿.可依据此会员所在会员组是否有投稿权限来决定会员能否够使用投稿功能. 1. ...

  2. 基于原生PHP交叉会员权限控制

    对于一个网站的后台管理系统,单一的超级管理员权限往往不能满足我们的需求,尤其是对于大型网站而言,这种单一的权限会引发许许多多的问题出现. 比如:一个网站编辑,平时他只是负责公司网站的公告更新,但如果网 ...

  3. ECshop后台角色权限的添加和分配

    1.在权限文件中配置 2.在需要加权限的文件中加入权限. 例如:d:\ecshop\admin\user_account.php 3.在数据库表 ecs_admin_action中配置 4.会员权限 ...

  4. iOS权限管理思路

    iOS权限的分类: 1.功能级权限管理 2.数据级权限管理 权限的获取方式: 通常通过网络获取,会有延迟 使用到权限的场景: 1. 点击发送会员专享魔法表情,  判断是否有发送会员专享魔法表情的权限, ...

  5. dedecms5.7怎么取消邮箱验证以及dedecms 会员发布的文章不需要审核的解决方法

    后台 ——系统基本参数——会员设置——会员权限开通状态——改为0 1.实现会员发布文章不需要审核,非会员发布需要审核 在member这个文件夹下找到archives_sg_add.php这个文件,打开 ...

  6. Linux开源系统对比Windows闭源系统的优势解析

    当我们听到linux的时候是不是觉得高大上的感觉呢?在我刚上大学的时候,听着学长们给我讲他们的大学的学习经历,先学习C语言.单片机.然后做一些项目,现在正学习linux操作系统,当我听到linux操作 ...

  7. 网络爬虫讲解(附java实现的实例)

    本文转载http://blog.csdn.net/luojinping/article/details/6870898 转载过来主要是防止想百度文库一样突然停止运作,导致很多文库丢失而无法找寻 网络蜘 ...

  8. iOS应用内付费(IAP)开发步骤列表

    iOS应用内付费(IAP)开发步骤列表 前两天和服务端同事一起,完成了应用内付费(以下简称IAP, In app purchase)的开发工作.步骤繁多,在此把开发步骤列表整理如下.因为只是步骤列表, ...

  9. <转>——网络爬虫

    网络蜘蛛即Web Spider,是一个很形象的名字.把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛.网络蜘蛛是通过网页的链接地址来寻找网页,从 网站某一个页面(通常是首页)开始,读 ...

随机推荐

  1. 命令 "sudo -H" 中的这个 "H" 什么作用?

    脚本中使用$HOME变量 问题描述:某些同事原来写的脚本中包含如下内容. BIN_DIR=${HOME}/tools TAIR_BIN_DIR=${HOME}/tair_bin TAIR_SRC_DI ...

  2. 微信开发第3章 通过accesstoken获取用户分组

    上一章我们获取到了access_token,那么我们可以试着拿token获取用户粉丝分组,调用接口地址为: http请求方式: GET(请使用https协议) https://api.weixin.q ...

  3. SonarQube代码质量管理平台安装与使用--转载

    原文:http://blog.csdn.net/hunterno4/article/details/11687269 Sonar简介 Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量, ...

  4. App升级时数据库的迁移更新

    前一段时间在进行App升级的时候,由于一开始版本初期没有考虑完善,导致走了很多弯路,后来经过自己的一些思考,总结出了一些在app升级的时候,数据库内文件同步保持更新的经验,希望能给大家带来帮助. 总体 ...

  5. EF 命令

    我们选VS中工具-库程序包管理器-程序包管理器控制台, 这时在VS底部会出现控制台 这时候我们要执行四个操作: 下载安装EF 到工程.PM> Install-Package EntityFram ...

  6. Obj2002java

    计算球体积 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  7. Ⅰ.AngularJS的点点滴滴--引导

    AngularJS已经被很多人像炒冷饭一样炒过啦,大部分都是直接复制官方文档没有说明一些注意事项,不过什么都要从头开始吧 页面引导实例化 1.自动实例化 <html> <script ...

  8. CentOS 6.7 final编译安装Python 2.7.11

    CentOS 6.7默认的Python版本为2.6.6,现升级为Python 2.7.11 1.安装编译环境 yum groupinstall "Development tools" ...

  9. get方式请求会出现中文乱码。post方式不会。

    get方式请求会出现中文乱码.post方式不会.   如果是要解决get方式中文乱码问题,就需要做一个拦截器,或者在web.xml做一个get请求的配置 来自为知笔记(Wiz)

  10. CXF错误:Unsupported major.minor version 51.0,java.lang.UnsupportedClassVersionErro

    CXF错误:Unsupported major.minor version 51.0 java.lang.UnsupportedClassVersionError >>>>&g ...