PHP网页安全认证的实例详解
不基于数据库:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<?php //unset($_SERVER['PHP_AUTH_USER']); $strAuthUser = $_SERVER [ 'PHP_AUTH_USER' ]; $strAuthPass = $_SERVER [ 'PHP_AUTH_PW' ]; if (! ( $strAuthUser == "a" && $strAuthPass == "a" )) { header( 'WWW-Authenticate: Basic realm="wly"' ); header( 'HTTP/1.0 401 Unauthorized' ); echo "用户验证!!" ; exit ; } else { echo "验证通过" ; header( "location:http://www.baidu.com" ); //unset($_SERVER['PHP_AUTH_USER']); } ?> |
基于数据库:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
<?php function authenticate_user() { header( 'WWW-Authenticate: Basic realm="Secret Stash"' ); header( "HTTP/1.0 401 Unauthorized" ); exit ; } if (! isset( $_SERVER [ 'PHP_AUTH_USER' ])) { authenticate_user(); } else { mysql_pconnect( "localhost" , "authenticator" , "secret" ) or die ( "Can't connect to database server!" ); mysql_select_db( "java2s" ) or die ( "Can't select authentication database!" ); $query = "SELECT username, pswd FROM user WHERE username='$_SERVER[PHP_AUTH_USER]' AND pswd=MD5('$_SERVER[PHP_AUTH_PW]')" ; $result = mysql_query( $query ); // If nothing was found, reprompt the user for the login information. if (mysql_num_rows( $result ) == 0) { authenticate_user(); } } ?> |
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.sina.com.cn/s/blog_a03d702f01012el6.html