セッション・タイムアウトへの対処
目的:
phpでセッションを利用する。デフォルトでは1440 秒でセッションが切れるが、作業を続けている場合はセッション切れにしたくない。
作業が止まってから指定時間が経つと、セッション切れにしたい。
なぜなら、
ユーザがログイン状態で多くのデータ登録作業などを行うと、設定セッション時間を超え、セッションが切れるため、それにより、作業を続けるためログインし直すなど手間を無くしたい。
方法:
PHP で、iframe.phpのようなセッション継続用のファイルを用意する。
このファイルを読み込む frame や iframe を見えない場所に置き、一定時間ごとにアクセスすることでセッション・タイムアウトを防ぐ。
例えば、session.gc_maxlifetime はデフォルトで 1440 秒になっているので、1440 秒以下の間隔でアクセスを行えばセッション・タイムアウトを防ぐことができる。
1200 秒ごとにサーバにアクセスするには以下のようにする。
main.php
<html>
<head>
<title>登録画面</title>
</head>
<body>
<iframe src="iframe.php" height="0" width="0"></iframe>
</body>
</html>
iframe.php
session_start(); <html> <head> <title>セッション時間切れ確認画面</title> <meta HTTP-EQUIV="Refresh" CONTENT="1200"> </head> <body> </body> </html>
page revision: 1, last edited: 18 Nov 2009 01:11