這裏我發佈了一個示例代碼,它給了我正確的結果。如果我不這樣做60秒的任何行動比我自動從page.let註銷低於會話超時如何在網站中工作
<?php
session_start();
// set time-out period (in seconds)
$inactive = 600;
// check to see if $_SESSION["timeout"] is set
if (isset($_SESSION["timeout"])) {
// calculate the session's "time to live"
$sessionTTL = time() - $_SESSION["timeout"];
if ($sessionTTL > $inactive) {
session_destroy();
header("Location: /logout.php");
}
}
$_SESSION["timeout"] = time();
代碼現在的問題是,isset()函數的功能裏面,我們計算$ sessionTTL意思。現在我們有兩個操作數,第一個是time(),第二個操作數是當前時間,第二個操作數是$ _SESSION [「timeout」],這個超時也包含當前時間,所以兩者的差值始終爲零。這個代碼,所以如何能夠做出來的,我很空閒60秒,並能夠摧毀了會議。 請解釋這背後的概念!
你確定'$ _SESSION [「timeout」]'是否設置了當前時間?以及如何在沒有'ajax'或'javascript'的情況下工作? –
沒有差異。所有時間都不會爲零,因爲您在條件第一個條件檢查後創建了會話,然後在分配會話後 –
是$ _SESSION [「timeout」]設置爲time();你可以檢查我從哪裏得到這個網站:http://phpmaster.com/php-sessions/ –