[PHP-users 11136] PEARライブラリのAuthクラスについて

soushi php-users@php.gr.jp
Mon, 28 Oct 2002 20:40:29 +0900


ひるたと申します

Authクラスを利用して、ユーザー認証する
ページを作成しております。

Software DESGIN7月号「特集:PHPによるWEBアプリ
カスタマイズテクニック」PHPライブラリPEARを使い
こなすのサンプルを動かしてみましたが、
Auth/Container/DB.phpでisconnection()が未定義
とエラーがでて正常に動作しません。

PEARパッケージはCVSでアップデートしました。
Authの使い方がいけないのでしょうか。

以下システム環境、ログ(syslog)、サンプルプログラムを
添付します。

サーバー環境

OS:Red Hat Linux 7.3J
Apache :1.3.27
PHP:4.1.2
DB:PostgreSQL7.2.1


PEARライブラリのVER(CVS)
----------------------------------------------
/DB.php/1.20/Thu Oct 24 00:27:18 2002//
/File.php/1.8/Thu Oct 24 00:27:18 2002//
/LDAP.php/1.9/Thu Oct 24 00:27:18 2002//
/vpopmail.php/1.1/Fri Oct 25 20:30:18 2002//
------------------------------------------------

syslog
-----------------------------------------
Oct 28 15:41:55 www httpd: PHP Fatal error:  Call to undefined function:
isconnection() in /usr/local/share/pear/Auth/Container/DB.php on line 133
-----------------------------------------

サンプルプログラム
----------------------------------------
<?php
require_once "Auth/Auth.php";
function loginFunction($username, $status){
  global $PHP_SELF;
  print <<<FORM
<form method="post" action="$PHP_SELF">
<input type="text" name="username">
<input type="password" name="password">
<input type="submit">
</form>
FORM;
}

$params = array(
  "dsn" => "pgsql://localhost:webdb@localhost/test",
  "table" => "test_t",
  "usernamecol" => "user",
  "passwordcol" => "passwd"
);
$a = new Auth("DB", $params, "loginFunction");
$a->start();

if($a->getAuth()){
  print $a->getUsername();
  print "<p>ログイン成功</p>";
}
?>

------------------------------------------------
-- 
蛭田聡司
E-Mail:soushi_h@nifty.com
URL   :http://www.hiruta.on.arena.ne.jp/