Heim >Backend-Entwicklung >PHP-Tutorial >php用户认证及管理(完全版)_PHP

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

WBOY
WBOYOriginal
2016-06-01 12:28:341383Durchsuche

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

作者MAX
-- 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');

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>


exit;

}

?>



-- end auth.inc --



-- begin connect.inc --



("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 --

include("auth.inc"); ?>




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 "+1">n";

echo "$user activatedn";

echo "

n$PHP_SELF
">返回n";

echo "n"
;

exit;

} else {

echo "+1">n";

echo "Error: Unknown Errorn";

echo "

n$PHP_SELF
">返回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 "+1">n";

echo "$user deactivatedn";

echo "

n$PHP_SELF
">返回n";

echo "n"
;

exit;

} else {

echo "+1">n";

echo "Error: Unknown Errorn";

echo "

n$PHP_SELF
">返回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 "+1">n";

echo "$user 已删除!n";

echo "

n$PHP_SELF
">返回n";

echo "n"
;

exit;

} else {

echo "+1">n";

echo "Error: Unknown Errorn";

echo "

n$PHP_SELF
">返回n";

echo "n"
;

exit;

}



}



echo "n";

echo "n";

echo "用户管理n";

echo "n";

echo "n";

echo "

post" action="$PHP_SELF">n";

echo "1">n";

echo "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 "n";

} elseif ($activated == "no") {

echo "n";

}

}

}

mysql_free_result
($result);

echo "
+1">Username +1">Real

Name


+1">Activated
+1">$username +1">$lastname,

$firstname


+1">$activated

$PHP_SELF?deactivate=yes&id=$id&user=$username">Deactivate

$PHP_SELF?delete=yes&id=$id">Delete
+1">$username +1">$lastname,

$firstname

+1">$activated
href="$PHP_SELF?activate=yes&id=$id">Activate

$PHP_SELF?delete=yes&id=$id">Delete
n"
;

echo "n";

echo "n";



?>



-- usermanage.php 结束-- 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn