欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php使用Header函數(shù),PHP_AUTH_PW和PHP_AUTH_USER做用戶驗(yàn)證

 更新時(shí)間:2016年05月04日 09:25:46   作者:看那邊  
這篇文章主要介紹了php使用Header函數(shù),PHP_AUTH_PW和PHP_AUTH_USER做用戶驗(yàn)證的方法,結(jié)合實(shí)例形式分析了PHP使用Header函數(shù)調(diào)用登錄驗(yàn)證及PHP_AUTH_PW和PHP_AUTH_USER進(jìn)行驗(yàn)證處理的相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了php使用Header函數(shù),PHP_AUTH_PW和PHP_AUTH_USER做用戶驗(yàn)證的方法。分享給大家供大家參考,具體如下:

在php中,可以使用Header函數(shù)做一些有趣的事情,用戶驗(yàn)證就是其中一個(gè)很有意思的功能。具體用法:

Header("WWW-Authenticate: Basic realm="USER LOGIN"");
Header("HTTP/1.0 401 Unauthorized");

在頁(yè)首設(shè)計(jì)這兩個(gè)Header函數(shù),頁(yè)面在載入前會(huì)出現(xiàn)一個(gè)登錄框,要求輸入用戶名和密碼。習(xí)慣了在頁(yè)面登錄的我們,是否覺得這樣的登錄很原始,又很新奇呢?

為了獲取從這個(gè)對(duì)話框中傳來(lái)的用戶名和密碼,需要用到php提供的兩個(gè)特殊變量$PHP_AUTH_USER和$PHP_AUTH_PW,要這樣使用這兩個(gè)特殊變量好像需要在php.ini中設(shè)置相關(guān)的選項(xiàng),不然就只能像下面這樣引用:

$_SERVER['PHP_AUTH_USER']
$_SERVER['PHP_AUTH_PW']

獲取到用戶提交上來(lái)的用戶名和密碼之后,要怎樣處理邏輯就跟我們一般的程序處理沒有什么區(qū)別了。下面提供兩個(gè)例程供參考:

<?php
if(!isset($PHP_AUTH_USER)) {
Header("WWW-authenticate: basic realm="XXX"");
Header("HTTP/1.0 401 Unauthorized");
$title="Login Instructions";
?>
<blockquote>
In order to enter this section of the web site, you must be an XXX
subscriber. If you are a subscriber and you are having trouble logging
in,
please contact <a href="mailto:support@xxx.com">support@xxx.com</a>.
</blockquote>
<?php
exit;
} else {
mysql_pconnect("localhost","nobody","") or die("Unable to connect to SQL server");
mysql_select_db("xxx") or die("Unable to select database");
$user_id=strtolower($PHP_AUTH_USER);
$password=$PHP_AUTH_PW;
$query = mysql_query("select * from users where user_id='$user_id' and password='$password'");
if(!mysql_num_rows($query)) {
Header("WWW-authenticate: basic realm="XXX"");
Header("HTTP/1.0 401 Unauthorized");
$title="Login Instructions";
?>
<blockquote>
In order to enter this section of the web site, you must be an XXX
subscriber. If you are a subscriber and you are having trouble
logging in,
please contact <a href="mailto:support@xxx.com">support@xxx.com</a>.
</blockquote>
<?php
exit;
}
$name=mysql_result($query,0,"name");
$email=mysql_result($query,0,"email");
mysql_free_result($query);
}
?>

另外一個(gè)參考的例程:

<?php
//assume user is not authenticated
$auth = false;
$user = $_SERVER['PHP_AUTH_USER'];
$pass = $_SERVER['PHP_AUTH_PW'];
if ( isset($user) && isset($pass) )
{
//connect to db
include 'db_connect.php';
//SQL query to find if this entered username/password is in the db
$sql = "SELECT * FROM healthed_workshop_admin WHERE
user = '$PHP_AUTH_USER' AND
pass = '$PHP_AUTH_PW'";
//put the SQL command and SQL instructions into variable
$result = mysql_query($sql) or die('Unable to connect.');
//get number or rows in command; if more than 0, row is found
$num_matches = mysql_num_rows($result);
if ($num_matches !=0)
{
//matching row found authenticates user
$auth = true;
}
}
if (!$auth)
{
header('WWW-Authenticate: Basic realm="Health Ed Presentation Admin"');
header('HTTP/1.0 401 Unauthorized');
echo 'You must enter a valid username & password.';
exit;
}
else
{
echo 'Success!';
}
?>

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語(yǔ)法入門教程》、《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《php日期與時(shí)間用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • php去除deprecated的實(shí)例方法

    php去除deprecated的實(shí)例方法

    在本篇文章里小編給大家整理的是一篇關(guān)于php去除deprecated的實(shí)例方法,有興趣的朋友們可以跟著學(xué)習(xí)參考下。
    2021-10-10
  • 在PHP中使用redis

    在PHP中使用redis

    這里是在Mac OS上安裝redis,并在PHP中開啟redis。
    2013-11-11
  • php基于表單密碼驗(yàn)證與HTTP驗(yàn)證用法實(shí)例

    php基于表單密碼驗(yàn)證與HTTP驗(yàn)證用法實(shí)例

    這篇文章主要介紹了php基于表單密碼驗(yàn)證與HTTP驗(yàn)證用法,以實(shí)例形式較為詳細(xì)的分析了表單密碼驗(yàn)證與HTTP驗(yàn)證的原理與相關(guān)注意事項(xiàng),具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • 如何使用Laravel Eloquent來(lái)開發(fā)無(wú)限極分類

    如何使用Laravel Eloquent來(lái)開發(fā)無(wú)限極分類

    在網(wǎng)上商城上,我們經(jīng)常可以看到多級(jí)分類、子分類、甚至無(wú)限極分類。本文將向你展示如何優(yōu)雅的通過(guò) Laravel Eloquent 將其實(shí)現(xiàn)。
    2021-05-05
  • 淺析PHP 按位與或 (^ 、&)

    淺析PHP 按位與或 (^ 、&)

    本篇文章是對(duì)PHP中的按位與或 (^ 、&)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • PHP中VC6、VC9、TS、NTS版本的區(qū)別與用法詳解

    PHP中VC6、VC9、TS、NTS版本的區(qū)別與用法詳解

    ISAPI執(zhí)行方式是以DLL動(dòng)態(tài)庫(kù)的形式使用,可以在被用戶請(qǐng)求后執(zhí)行,在處理完一個(gè)用戶請(qǐng)求后不會(huì)馬上消失,所以需要進(jìn)行線程安全檢查
    2013-10-10
  • 解析yii數(shù)據(jù)庫(kù)的增刪查改

    解析yii數(shù)據(jù)庫(kù)的增刪查改

    本篇文章是對(duì)yii數(shù)據(jù)庫(kù)增刪查改進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • php使用$_POST或$_SESSION[]向js函數(shù)傳參

    php使用$_POST或$_SESSION[]向js函數(shù)傳參

    php向js函數(shù)傳參的方法有多種,可以使用$_POST也可使用$_SESSION[' '],也可用echo語(yǔ)句進(jìn)行輸出,需要的朋友可以參考下
    2014-09-09
  • php獲取ip及網(wǎng)址的簡(jiǎn)單方法(必看)

    php獲取ip及網(wǎng)址的簡(jiǎn)單方法(必看)

    下面小編就為大家?guī)?lái)一篇php獲取ip及網(wǎng)址的簡(jiǎn)單方法(必看)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04
  • php文件緩存類用法實(shí)例分析

    php文件緩存類用法實(shí)例分析

    這篇文章主要介紹了php文件緩存類用法,以實(shí)例形式較為詳細(xì)的分析了php文件緩存類的定義、功能及具體使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04

最新評(píng)論