使用以下php脚本。如何激活会话直到用户注销。它每30分钟(大约)注销一次。或者,如果注销用户重定向到最后访问的页面。
<?PHP
require_once("./include/membersite_config.php");
if(!$fgmembersite->CheckLogin())
{ $loggedin="0";} else { $loggedin="1"; }
if ($loggedin=="1") {echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('You are already signed in. Please continue to use')
window.history.back();
</SCRIPT>");
exit; }
if(isset($_POST['submitted']))
{
if($fgmembersite->Login())
{
$fgmembersite->RedirectToURL("Upload.php");
}
}
?>
function CheckLogin()
{
session_start();
$sessionvar = $this->GetLoginSessionVar();
if(empty($_SESSION[$sessionvar]))
{
return false;
}
return true;
}
这是一个PHP配置问题。如果您无法访问php.ini文件或不想破坏它,您可以做的是,每次输入页面时,都将当前页面保存在数据库的表中(它应该与用户表有关系),当用户在30分钟限制后注销时,您只需从数据库中检索该值。
您可以使用$_SERVER['PHP_SELF']
获取当前URL。要检查用户注销是否只保存一个会话变量,每次加载页面时执行:
if(!isset($_SESSION['userid'])){
// redirect to the page in the database table
header("Location: ".$field_from_db);
}
希望它能有所帮助!