如何检查用户登录会话是否已过期,如php中的wp-admin一样?

时间:2016-06-23 05:35:21

标签: php ajax

我想检查用户会话是否已过期并要求再次登录,例如wp admin do,例如如果用户登录到wp admin并且几次弹出窗口再次登录,则会显示一条消息:“您将不会离开此页面”。如何在PHP中执行此操作?

2 个答案:

答案 0 :(得分:0)

修改htaccess文件

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
#Session timeout
php_value session.cookie_lifetime 1800
php_value session.gc_maxlifetime 1800
</IfModule>
# END WordPress

答案 1 :(得分:0)

PHP已经设置了默认会话超时,您需要做的是当用户点击管理页面内的链接时检查用户是否已登录以及他/她是否未保存它们所在的URL(可以通过会话完成),然后将它们发送到登录页面。登录时,您可以检查他们是否有会话,并将其重定向到那里。

检查是否已登录功能

if(loggedIn == false) {
    $_SESSION['currentpage'] = get_current_url;
    //redirect to login page
}

登录脚本

//code to login a user in
//when success
if(isset($_SESSION['currentpage'])) {
    //redirect back to that page
}
else {
    //redirect to home page
}