日期:2014-01-06  浏览次数:20432 次

                  浅谈php用户身份认证(二)      
                        爆米花 2001年12月28日 www.westxj.net
(二)基于http的多用户验证  
  上次给大家介绍了基于http的单用户验证,这次利用mysql数据库
储存多用户数据,进行多用户验证。
1、首先建立mysql数据库
mysql>create database user;        //建立数据库user
mysql>use user;                    //打开数据库user
mysql>create table user_data(      //建立数据表user_data
id int(9) not null aoto_increment, //id为自动增加整数字段
username varchar(10) not null,     //用户姓名
password varcher(10) not noll,     //密码
primary key(id);                   //设id为主键
);
2、身份验证程序
<?php
$error = "/www/error/error.php";
if ($PHP_AUTH_PW=="")                //如密码为空
{              
Header("WWW-Authenticate: Basic realm=\"用户登陆\"");
Header("HTTP/1.0 401 Unauthorized"); //验证
include($error);                     //定向error,php文件
exit;
}
else
{
mysql_connect("localhost", "root", "1234");     //连接数据库
$result = mysql_db_query("user","select password
from user_data where username='$PHP_AUTH_USER'");
                           //送查询字符串到mysql数据库中
$row = mysql_fetch_array($result); //返回数组资料
$passwd = $row[0];
mysql_close($db_id);               //关闭数据库  
if ($PHP_AUTH_PW!=$passwd)      //密码验证
{
Header("WWW-Authenticate: Basic realm=\"用户登陆\"");
Header("HTTP/1.0 401 Unauthorized");
include($error);
exit;
}
}