我想做的事情很简单,但我找不到如何实现它的线索。
我有一个由几个 php 文件组成的巨大表单,这些文件使用 AJAX 调用,用户必须填写,我想要实现的是:
1) 在此表单的每一页上测试会话是否已过期。
2)如果会话过期,我想将他重定向到一个特定的 URL,比如说http://www.example.com
在此先感谢您的帮助。问候。
我想做的事情很简单,但我找不到如何实现它的线索。
我有一个由几个 php 文件组成的巨大表单,这些文件使用 AJAX 调用,用户必须填写,我想要实现的是:
1) 在此表单的每一页上测试会话是否已过期。
2)如果会话过期,我想将他重定向到一个特定的 URL,比如说http://www.example.com
在此先感谢您的帮助。问候。
您可以通过使用检查会话是否处于活动状态
$session = JFactory::getSession();
if ($session->isActive()) {
}
我想到的第一件事是检查会话 cookie 是否存在。如果会话处于活动状态,则默认情况下 PHP 会话机制使用默认名称为“PHPSESSID”的 cookie。因此,如果 cookie PHPSESSID 存在,则您的会话处于活动状态。
您可以像这样检查会话 cookie 是否存在:
if(isset($_COOKIE['PHPSESSID'])) {
echo 'Session is active!';
} else {
echo 'Session is not active!';
}
要重定向,您可以使用以下命令:
header('Location: http://example.com');
要检查会话 cookie 名称,请使用以下命令:
session_start();
echo 'Session cookie name is: ' . session_name();
默认情况下它的“PHPSESSID”,但您或服务器管理员可以更改它,所以检查一下!
希望这可以帮助!