ホームページ >php教程 >php手册 >PHP はユーザー認証と管理の完全なソース コードを実装します

PHP はユーザー認証と管理の完全なソース コードを実装します

WBOY
WBOYオリジナル
2016-06-13 12:32:451711ブラウズ

-- 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');  
終了;  
}
$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');  
終了;  
}
$active = mysql_result($result,0,"active");  
if($active == 'no') {
?>  
  
404 見つかりません  

  

見つかりません

  
リクエストされた URL
  
このサーバーでは見つかりませんでした。

  
  
終了;  
}
?>  
-- 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,
ユーザー名 varchar(16) DEFAULT '' NOT NULL、
姓 tinyblob、
名 tinyblob、
パスワード varchar(16)、
レルム varchar(16)、
active char(3) ,
プライマリ キー (id),
UNIQUE id (id),
UNIQUE username (username)
);  
-- 用户库结构结束--
-- 追加用户例--
認証(ユーザー名、姓、名、パスワード、レルム、アクティブ)値(「admin」、「my」、 '愛'、'パスワード'、'xxxCOM'、'はい');  
-- 结束--
--用户管理程序开始 usermanage.php --
  
if ($PHP_AUTH_USER != "admin") {
Header("WWW-Authenticate: Basic realm="xxxCOM 客户认证"");  
Header("HTTP/1.0 401 Unauthorized");  
echo「アクセスが拒否されました!n」;  
終了;  
};  
if ($PHP_AUTH_PW != "mypassword") {
Header("WWW-Authenticate: Basic realm="xxxCOM 客户认证"");  
Header("HTTP/1.0 401 Unauthorized");  
echo「アクセスが拒否されました!n」;  
終了;  
};  
if ($activate) {
include("connect.inc");  
$query1 = "UPDATE auth SET active='yes' where id='$id'";  
$result1 = mysql_db_query("admin", $query1);  
if ($result1) {
echo "n";  
エコー「$user activatedn」;  
echo "
n戻りn";  
echo "
n";  
終了;  
} else {
echo "n";  
echo「エラー: 不明なエラー」;  
echo "
n戻りn";  
echo "
n";  
終了;  
}  
}
if ($deactivate) {
include("connect.inc");  
$query2 = "UPDATE auth SET active='no' where id='$id'";  
$result2 = mysql_db_query("admin", $query2);  
if ($result2) {
echo "n";  
エコー「$user 非アクティブ化されました」;  
echo "
n戻りn";  
echo "
n";  
終了;  
} else {
echo "n";  
echo「エラー: 不明なエラー」;  
echo "
n戻りn";  
echo "
n";  
終了;  
}
}
if ($delete) {
include("connect.inc");  
$query3 = "認証から削除します。where id='$id'";  
$result3 = mysql_db_query("admin", $query3);  
if ($result3) {
echo "n";  
echo "$user 已删除!n";  
echo "
n戻りn";  
echo "
n";  
終了;  
} else {
echo "n";  
echo「エラー: 不明なエラー」;  
echo "
n戻りn";  
echo "
n";  
終了;  
}
}
echo "n";  
echo「n」;  
echo "用户管理n";  
echo "n";
echo "n";  
echo "

n";  
echo "n";  
echo "gt;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 "< td>$lastname, $firstname< ;td>$lastname, $firstname<n";  
}
}
}  
mysql_free_result($result);  
echo "
ユーザー名本名< /font>gt;gt;gt;アクティブ化gt;
$username$activated非アクティブ化削除n";  
} elseif ($activated == "no") {
echo "
$username$activatedアクティブ化削除<
n";  
echo "n";  
echo "n";  
?>  
-- usermanage.php 结束--
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。