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 相关文章推荐
PHP HTML代码串截取代码
Dec 29 PHP
关于PHP内存溢出问题的解决方法
Jun 25 PHP
destoon实现调用自增数字从1开始的方法
Aug 21 PHP
php短址转换实现方法
Feb 25 PHP
php实现插入排序
Mar 29 PHP
PHP实现动态柱状图改进版
Mar 30 PHP
php准确计算复活节日期的方法
Apr 18 PHP
最准确的php截取字符串长度函数
Oct 29 PHP
功能强大的php文件上传类
Aug 29 PHP
php实现mysql连接池效果实现代码
Jan 25 PHP
PHP实现函数内修改外部变量值的方法示例
Dec 28 PHP
PHP微信发送推送消息乱码的解决方法
Feb 28 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调用数据库的存贮过程!
2006/10/09 PHP
PHP源码之 ext/mysql扩展部分
2009/07/17 PHP
ini_set的用法介绍
2014/01/07 PHP
配置php.ini实现PHP文件上传功能
2014/11/27 PHP
PHP中返回引用类型的方法
2015/04/03 PHP
PHP获取当前系统时间的方法小结
2018/10/03 PHP
实例讲解PHP表单处理
2019/02/15 PHP
js 代码集(学习js的朋友可以看下)
2009/07/22 Javascript
javascript 进阶篇3 Ajax 、JSON、 Prototype介绍
2012/03/14 Javascript
50款非常棒的 jQuery 插件分享
2012/03/29 Javascript
解决javascript:window.close()在chrome,Firefox下失效的问题
2013/05/07 Javascript
javascript十六进制及二进制转化的方法
2015/05/06 Javascript
详解JS中的快速排序与冒泡
2017/01/10 Javascript
AngularJs 常用的过滤器
2017/05/15 Javascript
使用pm2自动化部署node项目的方法步骤
2019/01/28 Javascript
JS前后端实现身份证号验证代码解析
2020/07/23 Javascript
[14:57]DOTA2 HEROS教学视频教你分分钟做大人-幽鬼
2014/06/13 DOTA
[05:00]TI9战队采访 - Royal Never Give Up
2019/08/20 DOTA
[01:08:30]DOTA2-DPC中国联赛 正赛 Ehome vs Elephant BO3 第一场 2月28日
2021/03/11 DOTA
几个提升Python运行效率的方法之间的对比
2015/04/03 Python
Python内置函数delattr的具体用法
2017/11/23 Python
PyTorch的深度学习入门教程之构建神经网络
2019/06/27 Python
Python split() 函数拆分字符串将字符串转化为列的方法
2019/07/16 Python
Python+OpenCV实现图像的全景拼接
2020/03/05 Python
Python中的__init__作用是什么
2020/06/09 Python
python 制作简单的音乐播放器
2020/11/25 Python
video结合canvas实现视频在线截图功能
2018/06/25 HTML / CSS
Gloeilampgoedkoop荷兰:在线购买灯泡
2019/02/16 全球购物
大学生四个方面的自我评价
2013/09/19 职场文书
专升本个人自我评价
2013/12/22 职场文书
银行内勤岗位职责
2014/04/09 职场文书
教育基金募捐倡议书
2014/05/14 职场文书
庆元旦演讲稿
2014/09/15 职场文书
委托培训协议书
2014/11/17 职场文书
毕业晚宴祝酒词
2015/08/11 职场文书
图解上海144收音机
2021/04/22 无线电