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


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();
    }
  }
 ?>

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

Laravel中获取路由参数Route Parameters的五种方法示例
前言大家都知道Laravel获取路由参数的方式有很多,并且有个小坑,现汇总如下,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧

WHOOPS PHP调试库的使用
Whoops适用于PHP环境的错误捕获与调试PHP库;whoops非常容易使用,它提供stackbased错误捕获及超美观的错误查看测试效果如下安装步骤(composer安装)安装

Laravel中批量赋值Mass-Assignment的真正含义详解
前言很多人初次遇到批量赋值的时候,很容易理解成批量添加多条数据,实际并非如此。下面话不多说了,请看下面的例子。假设用户表users结构如下,