ページの下のコードは、GET リクエストまたはブラウザの更新時にセッションを維持しますが、フォームを送信するとセッション データが失われます。
$user=$_POST['user']; $pass=$_POST['pass'];
if ($_POST['user'])
{ if($user==$un and $pass=$pw)
{ $_SESSION['uid']=$Xid;header('Location: '.$uri.'?welcome'); }
else { $msg="chybny login"; }
}
if(isset($_GET['logout'])) { session_destroy(); header('Location: '.$uri); }
$cnt=$_SESSION['cnt']+1; $_SESSION['cnt']=$cnt;
上記はログイン用のコードで、検証されたときにウェルカム ページにリダイレクトされますが、セッションは失われます。送信せずにページを更新するか繰り返しロードすると、セッション変数 cnt をエコーすることでセッションが保持されます (1、2、3、...)
フォームを送信した後、セッションが失われ、cnt 変数がリセットされますか?