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读取RSS feed的代码
Aug 01 PHP
php 验证码制作(网树注释思想)
Jul 20 PHP
7个超级实用的PHP代码片段
Jul 11 PHP
eAccelerator的安装与使用详解
Jun 13 PHP
Laravel框架学习笔记(一)环境搭建
Oct 15 PHP
PHP实现的简易版图片相似度比较
Jan 07 PHP
PHP数学运算函数大汇总(经典值得收藏)
Apr 01 PHP
php生成txt文件实例代码介绍
Apr 28 PHP
joomla组件开发入门教程
May 04 PHP
ThinkPHP3.2.2实现持久登录(记住我)功能的方法
May 16 PHP
Laravel框架中队列和工作(Queues、Jobs)操作实例详解
Apr 06 PHP
PHP常量及变量区别原理详解
Aug 14 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页面跳转代码 输入网址跳转到你定义的页面
2013/03/28 PHP
浅析十款PHP开发框架的对比
2013/07/05 PHP
php 无限分类 树形数据格式化代码
2016/10/11 PHP
php实现支持中文的文件下载功能示例
2017/08/30 PHP
PHP高并发和大流量解决方案整理
2019/12/24 PHP
清除网页历史记录,屏蔽后退按钮!
2008/12/22 Javascript
ExtJS 学习专题(一) 如何应用ExtJS(附实例)
2010/03/11 Javascript
javascript 节点排序 2
2011/01/31 Javascript
JQuery验证工具类搜集整理
2013/01/16 Javascript
jquery js 获取时间差、时间格式具体代码
2013/06/05 Javascript
javascript简单性能问题及学习笔记
2014/02/04 Javascript
javascript实现的HashMap类代码
2014/06/27 Javascript
JavaScript实现twitter puddles算法实例
2014/12/06 Javascript
JavaScript移除数组内重复元素的方法
2015/03/18 Javascript
JS折半插入排序算法实例
2015/12/02 Javascript
jQuery ajax应用总结
2016/06/02 Javascript
JavaScript简单获取页面图片原始尺寸的方法
2016/06/21 Javascript
微信小程序教程系列之视图层的条件渲染(10)
2017/04/19 Javascript
详解node HTTP请求客户端 - Request
2017/05/05 Javascript
vue时间格式化实例代码
2017/06/13 Javascript
VueX模块的具体使用(小白教程)
2020/06/05 Javascript
python 简单照相机调用系统摄像头实现方法 pygame
2018/08/03 Python
在python中利用最小二乘拟合二次抛物线函数的方法
2018/12/29 Python
python实现接口并发测试脚本
2019/06/25 Python
浅谈pytorch、cuda、python的版本对齐问题
2020/01/15 Python
python实现将range()函数生成的数字存储在一个列表中
2020/04/02 Python
Python requests模块session代码实例
2020/04/14 Python
Sony C++笔试题
2013/03/10 面试题
电信专业应届生自荐信
2013/09/28 职场文书
项目经理的岗位职责
2013/11/23 职场文书
会计学个人自荐信模板
2013/12/13 职场文书
节约用电标语
2014/06/17 职场文书
2015年医生个人工作总结
2015/04/25 职场文书
Anaconda安装pytorch和paddle的方法步骤
2022/04/03 Python
MySQL数据库 安全管理
2022/05/06 MySQL
教你nginx跳转配置的四种方式
2022/07/07 Servers