[PHP-users 11329] Re: 認証時における変数渡しについて
Katsunori-Onuma
php-users@php.gr.jp
Thu, 07 Nov 2002 09:33:18 +0900
小沼と申します。
On Wed, 06 Nov 2002 23:21:27 +0900
市川 雅英 <works@206st.net> wrote:
> 市川と申します。
>
> 認証が失敗した場合、強制的に「uogin.php」へ移動するのはいいのですが、ログイ
> ン成功後は、またログイン前のページに移動したいと思っています。
> つまり、ログイン後のページが動的に変わるようにしたいのですが、上記の方法です
> とうまくいきません。
> おそらくheader関数を利用したリダイレクトでSESSION変数もリフレッシュされてし
> まうのが原因だと思うのですが...
>
セッションの取り回しなどによって、組み方はいろいろあると思いますが、
ソースを有効に利用しようとするなら、
> if (isset($_POST["id"]) and isset($_POST["pass"])) {
> if ($_POST["id"] == xxx and $_POST["pass"] == xxxx) {
> $_SESSION["atari"] = 1;
> } else {
require("uogin.php");
exit;
> }
> } else {
> if (!isset($_SESSION["atari"])) {
> $_SESSION["page"] = "form.php";
require("uogin.php");
exit;
> } else {
> if ($_SESSION["atari"] == 1) {
> } else {
> $_SESSION["page"] = "form.php";
require("uogin.php");
exit;
> }
> }
> }
として、uogin.phpのフォームアクションを
<form action="<?php print ($_SERVER['PHP_SELF']); ?>" method="post">
とかにしてやればいけると思いますがどうでしょう?
はずしていたらすみません。