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动态创建Flash动画
Oct 09 PHP
php 获取百度的热词数据的代码
Feb 18 PHP
PHP设计模式之责任链模式的深入解析
Jun 13 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
Apr 08 PHP
destoon安装出现Internal Server Error的解决方法
Jun 21 PHP
Apache启动报错No space left on device: AH00023该怎么解决
Oct 16 PHP
CI映射(加载)数据到view层的方法
Mar 28 PHP
thinkphp中多表查询中防止数据重复的sql语句(必看)
Sep 22 PHP
PHP简单获取随机数的常用方法小结
Jun 07 PHP
php中错误处理操作实例分析
Aug 23 PHP
php文件包含的几种方式总结
Sep 19 PHP
PHP实现微信提现功能(微信商城)
Nov 21 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
php4的session功能评述(二)
2006/10/09 PHP
php 无法载入mysql扩展
2010/03/12 PHP
ThinkPHP验证码和分页实例教程
2014/08/22 PHP
php实现遍历文件夹的方法汇总
2017/03/02 PHP
javascript 学习之旅 (3)
2009/02/05 Javascript
jQuery 动态酷效果实现总结
2009/12/27 Javascript
javascript继承之为什么要继承
2012/11/10 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
2013/10/24 Javascript
jquery增加时编辑jqGrid(实例代码)
2013/11/08 Javascript
使用Bootstrap框架制作查询页面的界面实例代码
2016/05/27 Javascript
jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)
2016/11/09 Javascript
javascript DOM的详解及实例代码
2017/03/06 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
vue router2.0二级路由的简单使用
2017/07/05 Javascript
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
在IIS服务器上以CGI方式运行Python脚本的教程
2015/04/25 Python
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
2016/09/21 Python
python下载图片实现方法(超简单)
2017/07/21 Python
Python机器学习之决策树算法
2017/12/22 Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
2018/04/26 Python
Python应用库大全总结
2018/05/30 Python
对Python中列表和数组的赋值,浅拷贝和深拷贝的实例讲解
2018/06/28 Python
python 字符串常用方法汇总详解
2019/09/16 Python
Python实现中值滤波去噪方式
2019/12/18 Python
如何在sublime编辑器中安装python
2020/05/20 Python
涂鸦板简单实现 Html5编写属于自己的画画板
2016/07/05 HTML / CSS
夜大自我鉴定
2013/10/31 职场文书
春节联欢晚会主持词
2014/03/24 职场文书
红色故事演讲稿
2014/05/22 职场文书
个人四风问题整改措施
2014/10/24 职场文书
漂亮妈妈观后感
2015/06/08 职场文书
vue实现简单数据双向绑定
2021/04/28 Vue.js
Python Pandas pandas.read_sql函数实例用法
2021/06/21 Python
QT连接MYSQL数据库的详细步骤
2021/07/07 MySQL
服务器间如何实现文件共享
2022/05/20 Servers
码云(gitee)通过git自动同步到阿里云服务器
2022/12/24 Servers