Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php实现网页安全认证的代码详解

php实现网页安全认证的代码详解

黄舟
黄舟asal
2017-09-29 09:14:011960semak imbas

这篇文章主要介绍了PHP网页安全认证的实例详解的相关资料,这里提供了两种实现方法,一种基于数据库另一种不基于数据库的方法,希望通过本能帮助到大家,需要的朋友可以参考下

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

 不基于数据库:


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

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

基于数据库:


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

Atas ialah kandungan terperinci php实现网页安全认证的代码详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn