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


Posted in PHP onMarch 11, 2007

-- 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') {  
?>  
<HTML><HEAD>  
<TITLE>404 Not Found</TITLE>  
</HEAD><BODY>  
<H1>Not Found</H1>  
The requested URL  
<? echo $REQUEST_URI; ?>  
was not found on this server.<P>  
</BODY></HTML>  
<?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 "<font size="+1">n";  
echo "$user activatedn";  
echo "<br>n<a href="$PHP_SELF">返回</a>\n";  
echo "</font>n";  
exit;  
} else {  
echo "<font size="+1">n";  
echo "Error: Unknown Errorn";  
echo "<br>n<a href="$PHP_SELF">返回</a>\n";  
echo "</font>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 "<font size="+1">n";  
echo "$user deactivatedn";  
echo "<br>n<a href="$PHP_SELF">返回</a>\n";  
echo "</font>n";  
exit;  
} else {  
echo "<font size="+1">n";  
echo "Error: Unknown Errorn";  
echo "<br>n<a href="$PHP_SELF">返回</a>\n";  
echo "</font>n";  
exit;  
}  
}  
if ($delete) {  
include("connect.inc");  
$query3 = "delete from auth where id='$id'";  
$result3 = mysql_db_query("admin", $query3);  
if ($result3) {  
echo "<font size="+1">n";  
echo "$user 已删除!n";  
echo "<br>n<a href="$PHP_SELF">返回</a>\n";  
echo "</font>n";  
exit;  
} else {  
echo "<font size="+1">n";  
echo "Error: Unknown Errorn";  
echo "<br>n<a href="$PHP_SELF">返回</a>\n";  
echo "</font>n";  
exit;  
}  
}  
echo "<html>n";  
echo "<head>n";  
echo "<title>用户管理</title>n";  
echo "</head>n";
echo "<body>n";  
echo "<form method="post" action="$PHP_SELF">\n";  
echo "<table border="1">n";  
echo "<tr><th><font size="+1">Username</font></th><th><font size="+1">Real Name</font></th><th><font size="+1">Activated</font></th></tr>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 "<tr><td><font size="+1">$username</font></td><td><font size="+1">$lastname, $firstname</font></td><td><font size="+1">$activated</font></td><td><a href="$PHP_SELF?deactivate=yes&id=$id&user=$username">Deactivate</a></td><td><a href="$PHP_SELF?delete=yes&id=$id">Delete</a></td></tr>n";  
} elseif ($activated == "no") {  
echo "<tr><td><font size="+1">$username</font></td><td><font size="+1">$lastname, $firstname</font></td><td><font size="+1">$activated</font></td><td><a href="$PHP_SELF?activate=yes&id=$id">Activate</a></td><td><a href="$PHP_SELF?delete=yes&id=$id">Delete</a></td></tr>n";  
}  
}  
}  
mysql_free_result($result);  
echo "</table>\n";  
echo "</body>\n";  
echo "</html>\n";  
?>  
-- usermanage.php 结束--

PHP 相关文章推荐
PHP入门速成(2)
Oct 09 PHP
php实现jQuery扩展函数
Oct 30 PHP
收集的二十一个实用便利的PHP函数代码
Apr 22 PHP
php基础学习之变量的使用
Jun 09 PHP
php header功能的使用
Oct 28 PHP
PHP自带函数给数字或字符串自动补齐位数
Jul 29 PHP
将PHP从5.3.28升级到5.3.29时Nginx出现502错误
May 09 PHP
php连接oracle数据库的方法(测试成功)
May 26 PHP
Laravel手动分页实现方法详解
Oct 09 PHP
php实现背景图上添加圆形logo图标的方法
Nov 17 PHP
ThinkPHP模板标签eq if 中区分0,null,false的方法
Mar 24 PHP
php中文语义分析实现方法示例
Sep 28 PHP
随时给自己贴的图片加文字的php代码
Mar 08 #PHP
php网页后退不再出现过期
Mar 08 #PHP
php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
Mar 07 #PHP
php下实现农历日历的代码
Mar 07 #PHP
六酷社区论坛HOME页清新格调免费版 下载
Mar 07 #PHP
用PHP 快速生成 Flash 动画的方法
Mar 06 #PHP
利用discuz自带通行证整合dedecms的方法以及文件下载
Mar 06 #PHP
You might like
一个用于mysql的数据库抽象层函数库
2006/10/09 PHP
php设计模式 Visitor 访问者模式
2011/06/28 PHP
支持中文的php加密解密类代码
2011/11/27 PHP
php 多关键字 高亮显示实现代码
2012/04/23 PHP
PHP正确解析UTF-8字符串技巧应用
2012/11/07 PHP
CI框架中site_url()和base_url()的区别
2015/01/07 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
2017/08/11 PHP
laravel实现上传图片并在页面显示的例子
2019/10/14 PHP
Yii中特殊行为ActionFilter的使用方法示例
2020/10/18 PHP
js 纯数字不重复排列的另类方法
2010/07/17 Javascript
JS日期和时间选择控件升级版(自写)
2013/08/02 Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
2016/08/02 Javascript
JS实现六位字符密码输入器功能
2016/08/19 Javascript
JavaScript中cookie工具函数封装的示例代码
2016/10/11 Javascript
JS常用函数和常用技巧小结
2016/10/15 Javascript
js判断传入时间和当前时间大小实例(超简单)
2018/01/11 Javascript
基于Vue实现拖拽功能
2020/07/29 Javascript
vue调试工具vue-devtools安装及使用方法
2018/11/07 Javascript
layui原生表单验证的实例
2019/09/09 Javascript
在Django的通用视图中处理Context的方法
2015/07/21 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
2015/11/13 Python
PyTorch线性回归和逻辑回归实战示例
2018/05/22 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
2018/08/02 Python
Django框架模板介绍
2019/01/15 Python
python实现百度OCR图片识别过程解析
2020/01/17 Python
美国学校用品、教室和教学商店:Discount School Supply
2018/04/04 全球购物
优瑞自动咖啡机官网:Jura
2018/09/29 全球购物
公务员培训心得体会
2013/12/28 职场文书
GMP办公室主任岗位职责
2014/03/14 职场文书
网络工程师自荐书范文
2014/04/01 职场文书
入党积极分子对十八届四中全会期盼的思想汇报
2014/10/17 职场文书
工作收入证明范本
2015/06/12 职场文书
休假证明书
2015/06/24 职场文书
纪律委员竞选稿
2015/11/19 职场文书
Python手拉手教你爬取贝壳房源数据的实战教程
2021/05/21 Python
Javascript中Microtask和Macrotask鲜为人知的知识点
2022/04/02 Javascript