跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

Header函数和PHP_AUTH_USER做用户验证

php header php_auth_user php_auth_pw 用户验证在php中,可以使用Header函数做一些有趣的事情,用户验证就是其中一个很有意思的功能。具体用法:Header("WWW-Authenticate: Basic realm="USER LOGIN"");Header("HTTP/1.0 401 Unauthorized");在页首设计这两个Header函数,页面在载入前会出现一个登录框,要求输入用户名和密码。习惯了在页面登录的我们,是否觉得这样的登录很原始,又很新奇呢?

立即学习“PHP免费学习笔记(深入)

”;

为了获取从这个对话框中传来的用户名和密码,需要用到php提供的两个特殊变量$PHP_AUTH_USER和$PHP_AUTH_PW,要这样使用这两个特殊变量好像需要在php.ini中设置相关的选项,不然就只能像下面这样引用:$_SERVER['PHP_AUTH_USER']$_SERVER['PHP_AUTH_PW']获取到用户提交上来的用户名和密码之后,要怎样处理逻辑就跟我们一般的程序处理没有什么区别了。下面提供两个例程供参考:if(!isset($PHP_AUTH_USER)) {Header("WWW-authenticate: basic realm="XXX"");Header("HTTP/1.0 401 Unauthorized");$title="Login Instructions";?>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 support@xxx.com.

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";?>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 support@xxx.com.

exit;}$name=mysql_result($query,0,"name");$email=mysql_result($query,0,"email");mysql_free_result($query);}?>来源页面:http://www.weberdev.com/get_example-82.html

另外一个参考的例程:

php

相关文章