0
私はPHP開発の初心者です。私はPHP5電源プログラミングブックからのコードサンプル、次の試してみました:PEAR :: Authパッケージに関する質問
<?php
require_once 'DB.php';
require_once 'PEAR.php';
require_once 'Auth.php';
$auth_options = array(
'dsn' => 'mysql://username:[email protected]/database',
'table' => 'users',
'usernamecol' => 'username',
'passwordcol' => 'password',
'db_fields' => '*',
);
PEAR::setErrorHandling(PEAR_ERROR_DIE);
$auth = new Auth('DB', $auth_options);
$auth->start();
if (!$auth->getAuth()) {
exit;
}
if (!empty($_REQUEST['logout'])) {
$auth->logout();
print "<h1>Logged out</h1>\n";
print "<a href=\"$_SERVER[PHP_SELF]\">Log in again</a>\n";
exit;
}
print "<h1>Logged in!</h1>\n";
if (!empty($_REQUEST['dump'])) {
print "<pre>_authsession = ";
print_r($_SESSION['_authsession']);
print "</pre>\n";
} else {
print "<a href=\"$_SERVER[PHP_SELF]?dump=1\">Dump session</
?a><br>\n";
}
print "<a href=\"$_SERVER[PHP_SELF]?logout=1\">Log Out</a>\n";
?>
私はこのコードを持っていますいくつかの問題があります。
- は私に初めてログインするには、次の警告を得る:
警告: session_regenerate_id()[function.session-regenerate-id]:セッションIDを再生成できません - すでに/usr/local/php5/lib/php/Auth.phpに830行で送信されているヘッダ
警告:ヘッダー情報は既に変更できません/ usr/local/php5/lib /にある(出力は/home/myaccount/www/www/test.php:2で開始されました) php/Auth.php on line 858
なぜ私はこれらを取得していますか?
- 第二に、私はダンプセッションリンクをクリックしたとき、それは再度ログインするように私に尋ねる - 。つまり、私はすでに認証され、ログインしていますことを認識していない
は、これらを説明してくださいいくつかのでした私に?ありがとう。