Home  >  Article  >  php教程  >  PHP实现用户认证及管理完全源码

PHP实现用户认证及管理完全源码

WBOY
WBOYOriginal
2016-06-13 12:32:451663browse

-- begin auth.inc --  
$id = "xxxCOM";  
if(!isset($PHP_AUTH_USER)) {  
Header("WWW-Authenticate: Basic realm="$id"");  
Header("HTTP/1.0 401 Unauthorized");  
require('error.inc');  
exit;  
}  
$name = $PHP_AUTH_USER;  
$pass = $PHP_AUTH_PW;  
require("connect.inc");  
$query = "select * from auth where username='$name' && realm='$id'";  
$result = mysql_db_query("admin", $query);  
if(mysql_num_rows($result) == 0) {  
Header("WWW-Authenticate: Basic realm="$id"");  
Header("HTTP/1.0 401 Unauthorized");  
require('error.inc');  
exit;  
}  
$active = mysql_result($result,0,"active");  
if($active == 'no') {  
?>  

  
404 Not Found  
  

Not Found

  
The requested URL  
 echo $REQUEST_URI; ?>  
was not found on this server.

  
  
exit;  
}  
?>  
-- end auth.inc --  
-- begin connect.inc --  
  
-- end connect.inc --  
-- begin error.inc --  
此文件存放错误信息及返回!  
-- end error.inc --  
-- 用户库结构(自己调整)--  
CREATE TABLE auth (  
id smallint(6) DEFAULT '0' NOT NULL auto_increment,  
username varchar(16) DEFAULT '' NOT NULL,  
lastname tinyblob,  
firstname tinyblob,  
password varchar(16),  
realm varchar(16),  
active char(3),  
PRIMARY KEY (id),  
UNIQUE id (id),  
UNIQUE username (username)  
);  
-- 用户库结构结束--  
-- 添加用户示例--  
insert into auth (username, lastname, firstname, password, realm, active) values ('admin','my','love','password','xxxCOM','yes');  
-- 结束--  
--用户管理程序开始 usermanage.php --  
  
if ($PHP_AUTH_USER != "admin") {  
Header("WWW-Authenticate: Basic realm="xxxCOM 客户认证"");  
Header("HTTP/1.0 401 Unauthorized");  
echo "Access Denied!n";  
exit;  
};  
if ($PHP_AUTH_PW != "mypassword") {  
Header("WWW-Authenticate: Basic realm="xxxCOM 客户认证"");  
Header("HTTP/1.0 401 Unauthorized");  
echo "Access Denied!n";  
exit;  
};  
if ($activate) {  
include("connect.inc");  
$query1 = "UPDATE auth SET active='yes' where id='$id'";  
$result1 = mysql_db_query("admin", $query1);  
if ($result1) {  
echo "n";  
echo "$user activatedn";  
echo "
n返回\n";  
echo "
n";  
exit;  
} else {  
echo "n";  
echo "Error: Unknown Errorn";  
echo "
n返回\n";  
echo "
n";  
exit;  
}  
}  
if ($deactivate) {  
include("connect.inc");  
$query2 = "UPDATE auth SET active='no' where id='$id'";  
$result2 = mysql_db_query("admin", $query2);  
if ($result2) {  
echo "n";  
echo "$user deactivatedn";  
echo "
n返回\n";  
echo "
n";  
exit;  
} else {  
echo "n";  
echo "Error: Unknown Errorn";  
echo "
n返回\n";  
echo "
n";  
exit;  
}  
}  
if ($delete) {  
include("connect.inc");  
$query3 = "delete from auth where id='$id'";  
$result3 = mysql_db_query("admin", $query3);  
if ($result3) {  
echo "n";  
echo "$user 已删除!n";  
echo "
n返回\n";  
echo "
n";  
exit;  
} else {  
echo "n";  
echo "Error: Unknown Errorn";  
echo "
n返回\n";  
echo "
n";  
exit;  
}  
}  
echo "n";  
echo "

n";  
echo "用户管理n";  
echo "n";
echo "n";  
echo "
\n";  
echo "n";  
echo "n";  
include("connect.inc");  
$query = "SELECT * FROM auth";  
$result = mysql_db_query("admin", $query);  
if ($result) {  
while ($r = mysql_fetch_array($result)) {  
$id = $r["id"];  
$username = $r["username"];  
$lastname = $r["lastname"];  
$firstname = $r["firstname"];  
$activated = $r["active"];  
if ($activated == "yes") {  
echo "n";  
} elseif ($activated == "no") {  
echo "n";  
}  
}  
}  
mysql_free_result($result);  
echo "
Username Real Name Activated
$username $lastname, $firstname $activated Deactivate Delete
$username $lastname, $firstname $activated Activate Delete
\n";  
echo "\n";  
echo "\n";  
?>  
-- usermanage.php 结束--
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn