セッション・タイムアウトへの対処

目的:
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

<?php
session_start();
?>
<html>
 <head>
  <title>セッション時間切れ確認画面</title>
  <meta HTTP-EQUIV="Refresh" CONTENT="1200">
 </head>
 <body>
 </body>
</html>
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License