@634

PEAR - Auth

Advertisement

PEAR:Authとは

認証機能を利用するためのモジュール。
ユーザーIDとパスワードを利用したユーザ認証機能を利用することができる。
また、ユーザーの管理方法もデータベースの他に、ファイルやLDAPなど、いろいろなものを選択することができる。

認証機能を利用する

myAuth.php
<?php
require_once "Auth/Auth.php";

$params = array(
    "dsn" => "mysql://root:root@localhost/sample",
    "table" => "user",
    "usernamecol" => "user",
    "passwordcol" => "password",
    "cryptType" => "none",
);
$myAuth = new Auth("DB", $params);
$myAuth->start();
if(!$myAuth->getAuth()){
    print "fail";
    exit();
}
print "success";
?>
このphpにアクセスすると、一度でも認証されている場合はsuccessと表示され、認証済みでない場合はfailという文字とログイン用のフォームが表示される(図1参照)
図1:PEAR:Authにより表示されたログインフォーム
図1:PEAR:Authにより表示されたログインフォーム

ログアウト機能

Authインスタンスのlogoutメソッドを呼ぶと、ログアウト処理を実行することができる。

$myAuth->logout();

自分で作成したフォームを利用する

myAuth.php
<?php
require_once "Auth/Auth.php";

function login(){
    print "<form method=\"post\" action=\"" . $_SERVER['PHP_SELF'] . "\">";
    print "<input type=\"text\" name=\"username\">";
    print "<input type=\"password\" name=\"password\">";
    print "<input type=\"submit\" value=\"login\">";
    print "</form>";
}

$params = array(
    "dsn" => "mysql://root:root@localhost/sample",
    "table" => "user",
    "usernamecol" => "user",
    "passwordcol" => "password",
    "cryptType" => "none",
);
$myAuth = new Auth("DB", $params, "login");
$myAuth->start();
if(!$myAuth->getAuth()){
    print "fail";
    exit();
}
print "success";
?>
フォーム表示用のメソッドを記述して、Authの初期化パラメータにメソッド名を渡す。

リンク

Advertisement

ショートカット

634
634ブログ
このカテゴリのトップページに戻る
Incubator(Pukiwiki)
634ラボ
   UIコレクションギャラリー
   ZO-3ジェネレーター

サイト検索


Y!ログール