[PHP-users 27926] PHP上のフォームでBasic認証させたい

古川敦史 agl @ mbi.nifty.com
2005年 12月 25日 (日) 13:54:58 JST


古川@フリーランスSEです。
クライアントの要望でBasic認証を使うがプロンプトを表示させたくない
と言われました。

header関数で実現できそうなので、以下のようなサンプルを作成しましたが
プロンプト画面が表示されます。

なにか、いい方法はあるでしょうか?

-- 以下、サンプルプログラムです。
<?php
$id = "sample";
$passwd = "passwd";

if (isset($_GET['login'])) {
    $http_auth = base64_encode($id . ":" . $passwd);
    $location = "https://" . $_SERVER['SERVER_NAME'] . dirname($_SERVER['PHP_SELF']) . '/member';
    header('Authorization: Basic ' . $http_auth);
    header('Location: ' . $location);
    exit;
}

?>
<form action="<?= $_SERVER['PHP_SELF']; ?>">
    <input type="submit" name="login" value="login">
</form>
--
なお、memberディレクトリに上記idとパスワードで認証をかけています。

PHPの環境は次のようになります。
Vine Linux 3.2
Apache 2.0.55
PHP 4.4.1
OpenSSL 0.9.7d

以上

-- /Private
aglib (http://aglib.sourceforge.jp)、開発中
//Furukawa Atsushi / 古川 敦史
E-Mail: agl @ violet.plala.or.jp
Y!Messanger: KeePeeLue
Skype: atsushifx
MOBILE: 070-5010-5225
FAX: 020-4622-3018
HomePage: http://www.aglabo.com/agl/
          http://www.furukawa-select.com/mt/



PHP-users メーリングリストの案内