PHP网页安全认证的实例详解


Posted in PHP onSeptember 28, 2017

PHP网页安全认证的实例详解

 不基于数据库:

<?php
    //unset($_SERVER['PHP_AUTH_USER']);
    $strAuthUser= $_SERVER['PHP_AUTH_USER'];      
    $strAuthPass= $_SERVER['PHP_AUTH_PW'];

 if (! ($strAuthUser == "a" && $strAuthPass == "a")) {
  header('WWW-Authenticate: Basic realm="wly"');
  header('HTTP/1.0 401 Unauthorized');
  echo "用户验证!!";
  exit;
 } else {
  echo "验证通过";
  
  header("location:http://www.baidu.com");
  //unset($_SERVER['PHP_AUTH_USER']);  
 }
?>

基于数据库:

<?php
  function authenticate_user() {
    header('WWW-Authenticate: Basic realm="Secret Stash"');
   header("HTTP/1.0 401 Unauthorized");
    exit;
  }
 
  if (! isset($_SERVER['PHP_AUTH_USER'])) {
    authenticate_user();
  } else {
    mysql_pconnect("localhost","authenticator","secret") or die("Can't connect to database server!");
    mysql_select_db("java2s") or die("Can't select authentication database!");
 
   $query = "SELECT username, pswd FROM user WHERE username='$_SERVER[PHP_AUTH_USER]' AND pswd=MD5('$_SERVER[PHP_AUTH_PW]')";
 
    $result = mysql_query($query);
 
    // If nothing was found, reprompt the user for the login information.
    if (mysql_num_rows($result) == 0) {
     authenticate_user();
    }
  }
 ?>

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
基于文本的留言簿
Oct 09 PHP
PHP手机号码归属地查询代码(API接口/mysql)
Sep 04 PHP
解决PHP mysql_query执行超时(Fatal error: Maximum execution time …)
Jul 03 PHP
php不允许用户提交空表单(php空值判断)
Nov 12 PHP
php数组删除元素示例
Mar 21 PHP
PHP取余函数介绍MOD(x,y)与x%y
May 15 PHP
PHP curl实现抓取302跳转后页面的示例
Jul 04 PHP
php采用ajax数据提交post与post常见方法总结
Nov 10 PHP
Laravel实现用户注册和登录
Jan 23 PHP
php简单随机字符串生成方法示例
Apr 19 PHP
浅谈PHP中pack、unpack的详细用法
Mar 12 PHP
PHP设计模式之装饰器模式定义与用法简单示例
Aug 13 PHP
php二维码生成以及下载实现
Sep 28 #PHP
详谈symfony window下的安装 安装时候出现的问题以及解决方法
Sep 28 #PHP
PHP面向对象多态性实现方法简单示例
Sep 27 #PHP
PHP实现使用DOM将XML数据存入数组的方法示例
Sep 27 #PHP
Thinkphp3.2简单解决多文件上传只上传一张的问题
Sep 26 #PHP
基于ThinkPHP5.0实现图片上传插件
Sep 25 #PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 #PHP
You might like
php获取文件大小的方法
2014/02/26 PHP
thinkPHP实现MemCache分布式缓存功能
2016/03/23 PHP
php实现计算百度地图坐标之间距离的方法
2016/05/05 PHP
PHP 常用时间函数资料整理
2016/10/22 PHP
JavaScript 工具库 Cloudgamer JavaScript Library v0.1 发布
2009/10/29 Javascript
jQuery中的read和JavaScript中的onload函数的区别
2014/08/27 Javascript
JavaScript及jquey实现多个数组的合并操作
2014/09/06 Javascript
基于NodeJS的前后端分离的思考与实践(二)模版探索
2014/09/26 NodeJs
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
2015/05/07 Javascript
jQuery防止重复绑定事件的解决方法
2016/05/14 Javascript
jQuery插件HighCharts绘制2D带Label的折线图效果示例【附demo源码下载】
2017/03/08 Javascript
Webpack中css-loader和less-loader的使用教程
2017/04/27 Javascript
详解使用React全家桶搭建一个后台管理系统
2017/11/04 Javascript
基于jQuery Ajax实现下拉框无刷新联动
2017/12/06 jQuery
[01:07:21]NAVI vs VG Supermajor 败者组 BO3 第二场 6.5
2018/06/06 DOTA
[01:38]完美世界DOTA2联赛PWL S3 集锦第四期
2020/12/21 DOTA
浅析Python pandas模块输出每行中间省略号问题
2018/07/03 Python
python使用matplotlib画饼状图
2018/09/25 Python
Python3.5常见内置方法参数用法实例详解
2019/04/29 Python
手把手教你安装Windows版本的Tensorflow
2020/03/26 Python
Django-rest-framework中过滤器的定制实例
2020/04/01 Python
利用python实现平稳时间序列的建模方式
2020/06/03 Python
使用pygame实现垃圾分类小游戏功能(已获校级二等奖)
2020/07/23 Python
浅谈Python描述数据结构之KMP篇
2020/09/06 Python
详解Python中的Lock和Rlock
2021/01/26 Python
彻底弄明白CSS3的Media Queries(跨平台设计)
2010/07/27 HTML / CSS
Sunglasses Shop瑞典:欧洲领先的太阳镜网上商店
2018/04/22 全球购物
Prototype如何为一个Ajax添加一个参数
2015/12/06 面试题
采购部部门职责
2013/12/15 职场文书
关于读书的演讲稿
2014/05/07 职场文书
2014年党课学习心得体会
2014/07/08 职场文书
2014年教师德育工作总结
2014/11/10 职场文书
2015年幼儿园保育员工作总结
2015/04/23 职场文书
2015年大学班长个人工作总结
2015/04/24 职场文书
MySQL 分组查询的优化方法
2021/05/12 MySQL
vue项目配置sass及引入外部scss文件
2022/04/14 Vue.js