用户认证及管理(完全版) (转)

本文介绍了一个基于PHP的用户认证及管理系统实现方案,包括用户验证、激活、停用和删除等功能。通过示例代码展示了如何使用基本的身份验证机制保护网页内容。
用户认证及管理(完全版) (转)[@more@]

用户认证及管理(完全版) 
 
   用户认证及管理(完全版)
作者:MAX
来源:奥索网
-- begin auth.inc --

PHP

$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.



<?php
exit;
}
?>

-- end auth.inc --

-- begin connect.inc --

<?php mysql_connect("localhost", "user", ""); ?>

-- 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 --
<?php include("auth.inc"); ?>
<?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 "RM method="post" action="$PHP_SELF">n";
echo "
UsernameReal Name
Activated

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 "

$username $lastname, $firstname
$activated
Deactivate
Deleten";
} elseif ($activated == "no") {
echo " $username $lastname, $firstname
$activated Activate
Deleten";
}
}
}
mysql_free_result($result);
echo "n";
echo "n";
echo "n";

?>

-- usermanage.php 结束--


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-987479/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10752043/viewspace-987479/

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值