一覧 |
コード登録画面
Basic認証用クラス [ 2004年11月21日 ]
<?
/**
* Basic認証用クラス
* Basic認証を行うための部品
* 作成者:
* KJ copyright (C) phpspot
* 使い方:
* $users = (
* 'user1'=>'pass1',
* 'user2'=>'pass2',
* );
*
* $a = new basicAuth($users);
* $flg = $a->execute();
* if($flg == FALSE){ echo "ログインできません";exit; }
* else{ echo "ログインしました"; }
*/
define("AUTH_NAME","Admin logon");
class basicAuth{
var $users = array();
function basicAuth($arg){
if(is_array($arg)){
$this->users = $arg;
}
}
function authHeader(){
header('WWW-Authenticate: Basic realm="'.AUTH_NAME.'"');
header('HTTP/1.0 401 Unauthorized');
}
// Basic認証を実行
// 戻り値 FALSE : 認証失敗,TRUE : 認証成功
function execute(){
global $HTTP_SERVER_VARS,$HTTP_ENV_VARS;
$user = $HTTP_SERVER_VARS["PHP_AUTH_USER"];
$pass = $HTTP_SERVER_VARS["PHP_AUTH_PW"];
if($user == ""){
$this->authHeader();
return FALSE;
}else{
if(array_key_exists($user,$this->users) &&
$this->users[$user] == $pass){
return TRUE;
}else{
$this->authHeader();
return FALSE;
}
}
}
}
?>
投稿者:KJ<phpedit@hotmail.com>
//phpspot.net/