其他语言

本类阅读TOP10

·基于Solaris 开发环境的整体构思
·使用AutoMake轻松生成Makefile
·BCB数据库图像保存技术
·GNU中的Makefile
·射频芯片nRF401天线设计的分析
·iframe 的自适应高度
·BCB之Socket通信
·软件企业如何实施CMM
·入门系列--OpenGL最简单的入门
·WIN95中日志钩子(JournalRecord Hook)的使用

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
采用PHP PEAR中的AUTH实现基本身份验证

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

采用PHP PEAR中的AUTH实现基本身份验证

所需文件:
   PEAR DB,Auth
表结构
CREATE TABLE auth (
   username VARCHAR(50) default '' NOT NULL,
   password VARCHAR(32) default '' NOT NULL,
   PRIMARY KEY (username),
   KEY (password)
);


代码:
<?php
require_once "Auth/Auth.php";
function loginFunction()
{
     /**
      * Change the HTML output so that it fits to your
      * application.
      */
     echo "<form method=\"post\" action=\"" . $_SERVER['PHP_SELF'] . "?login=1\">";
     echo "<input type=\"text\" name=\"username\">";
     echo "<input type=\"password\" name=\"password\">";
     echo "<input type=\"submit\">";
     echo "</form>";
}
//此处控制是否应该显示登录对话框
if (isset($_GET['login']) && $_GET['login'] == 1) {
     $optional = true;
} else {
     $optional = false;
}
$dsn = "mysql://user:pass@localhost/authdb";
$a = new Auth("DB", $dsn, "loginFunction", $optional);
$a->start();
if (! isset($_GET['login'])) {
     echo "<a href=\"" . $_SERVER['PHP_SELF'] . "?login=1\">Click here to log in</a><br />\n";
}
if ($a->getAuth()) {
     //add some code here
     echo "<a href=\"" . $_SERVER['PHP_SELF'] . "?action=logout\">Logout</a><br />\n";
} elseif($_GET['login'] == 1) {
 echo "Please login";
}
//注销,重新登录
if ($_GET['action'] == "logout" && $a->getAuth()) {
    $a->logout();
    $a->start();
}
?>

这样一个简单的验证程序就好了,你可以自行扩展它的用户界面。
注:默认的口令加密码方式为MD5,即if (md5($_POST['password']) === password),表名和字段名不能变动,
password的字段长度最小为32

 

 




相关文章

相关软件