當會話以PHP腳本結束時,是否可以運行函數?我的腳本提出了幾個問題,用戶有30分鐘的時間回答或會話過期。我想我的腳本任何進展保存到一個文本文件如果會話過期,並且用戶還沒有完成所有的答案。我會如何去做這件事?會話過期時運行一個函數嗎?
我聽說register_shutdown_function( '關機');但我對我在腳本中的位置感到困惑。
我現在的腳本啓動這樣的:
ini_set('session.gc_maxlifetime',1800);
ini_set('session.gc_probability',1);
ini_set('session.gc_divisor',1);
session_start();
if($_SESSION['loggedin'] !== 1) {//checks to see if user has logged in
header('Location: login.php');
exit;}
...asks a bunch of questions....
session_destroy();
感謝您的幫助。
你說得對,'sleep()'不是這裏的選項。如果使用Comet(AJAX長輪詢)而不是傳統的AJAX,這可能是一個選項,但這只是大型解決方案稱爲長輪詢的一小部分。 – Tadeck