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之第十天
Oct 09 PHP
PHP中的CMS的涵义
Mar 11 PHP
php 什么是PEAR?
Mar 19 PHP
PHP中date()日期函数有关参数整理
Jul 19 PHP
php文件操作之小型留言本实例
Jun 20 PHP
php版微信自动登录并获取昵称的方法
Sep 23 PHP
PHP 搜索查询功能实现
Nov 29 PHP
PHP常用的三种设计模式
Feb 17 PHP
PHP面向对象之事务脚本模式(详解)
Jun 07 PHP
PHP中OpenSSL加密问题整理
Dec 14 PHP
PHP实现的简单组词算法示例
Apr 10 PHP
Laravel 类和接口注入相关的代码
Oct 15 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与ASP
2006/10/09 PHP
聊天室php&amp;mysql(二)
2006/10/09 PHP
php下使用无限生命期Session的方法
2007/03/16 PHP
php版微信公众平台开发之验证步骤实例详解
2016/09/23 PHP
thinkphp5 URL和路由的功能详解与实例
2017/12/26 PHP
如何在PHP中使用数组
2020/06/09 PHP
javascript 一些用法小结
2009/09/11 Javascript
火狐4、谷歌12不支持Jquery Validator的解决方法分享
2011/06/20 Javascript
Prototype源码浅析 Number部分
2012/01/16 Javascript
javascript自适应宽度的瀑布流实现思路
2013/02/20 Javascript
Extjs407 getValue()和getRawValue()区别介绍
2013/05/21 Javascript
BootStrap3学习笔记(一)之网格系统
2016/05/20 Javascript
老生常谈js动态添加事件--- 事件委托
2016/07/19 Javascript
原生js图片轮播效果实现代码
2016/10/19 Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
2016/11/01 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
Bootstrap Table 搜索框和查询功能
2017/11/30 Javascript
vue项目中,main.js,App.vue,index.html的调用方法
2018/09/20 Javascript
vue.js实现的幻灯片功能示例
2019/01/18 Javascript
深入浅出 Vue 系列 -- 数据劫持实现原理
2019/04/23 Javascript
[48:32]VGJ.T vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python 网络编程起步(Socket发送消息)
2008/09/06 Python
python爬虫之百度API调用方法
2017/06/11 Python
关于tf.reverse_sequence()简述
2020/01/20 Python
泰国最新活动和优惠:Megatix
2020/05/07 全球购物
威盛公司软件C++工程师笔试题面试题
2012/07/16 面试题
项目经理的岗位职责
2013/11/23 职场文书
信电学院毕业生自荐书
2014/05/24 职场文书
设备售后服务承诺书
2014/05/30 职场文书
学校工作推荐信范文
2014/07/11 职场文书
小学生感恩父母演讲稿
2014/08/28 职场文书
观看信仰心得体会
2014/09/04 职场文书
2015年党风廉政承诺书
2015/01/22 职场文书
学校工会工作总结2015
2015/05/19 职场文书
亮剑精神观后感
2015/06/05 职场文书
导游词之无锡华莱坞
2019/12/02 职场文书