[PHP-users 3028] Re: POSTされたデータについて

Yusuke Izumi php-users@php.gr.jp
Mon, 22 Oct 2001 16:12:42 +0900


有効期限の情報をもつ変数をSession Registerしてみてはどうでしょうか?

プログラムのはじめに、時間切れの処理のルーチンを組みます。
//************************
session_register ($time_expire);
if ($time_expire < time ()) {
	// 時間切れの処理
	}
//************************

そして、認証している場合、プログラム一番終わりに、
有効時間を増やすルーチンを設ける。
//************************
$limit_in_second = 900; // 有効時間を900秒に設定。
$time_expire = time () + $limit_in_second;
//************************

こうすれば、なんぼ有効期限切れのPOSTデータを送っても、時間は基に
戻せないので、オッケー!というわけですな。

Best,
y.i.

*---*
> セッションを使用し、ログイン制限をID、Passwordにてかけているページ
> を作成しています。
> 
> 概要:
> ログイン画面(POSTにてパスワード、IDを送信)
>> メニュー(パスワード、ID照合。 一致していればsession_register()にてID、
> Passwordを登録)
>> ログアウト(session_start()、session_destory()を実行し、セッションを削除)
> 
> この場合、ログイン画面→メニューという通常の動きなら問題ないのですが、ログア
> ウトし、セッションを削除した後に戻るボタンでメニュー画面に戻ると「ページの有
> 効期限切れ」が表示されそのまま更新すると、どうやらキャッシュに残っているログ
> イン時にPOSTされたデータが参照され通常のログインのようにメニュー画面が表示さ
> れてしまいます。
> 
> このようなときにPHPにて回避する方法はあるのでしょうか?
*---*

-- 
Yusuke Izumi <izumi@visualjapan.co.jp>
URL:  www.bajoart.com