2013-04-03 111 views
-1

我正在构建我的教程网站。为此我有登录设施。会议开始后,我的主页将打开。我将有多个网页,当我点击链接会话必须继续下一个连续页面。因此,最左上角的变量用户名将保留到会话过期(按下登出时)。怎么做?请帮帮我。如何检查会话是否过期或在每个网页php?

+0

如果您的查询已解决,请考虑选择其中一个答案作为正确答案。 – LoneWOLFs

回答

1

试试这个

if(isset($_SESSION['your_sess_name']) && !empty($_SESSION['your_sess_name'])) { 
    echo 'your session exists'; 
} 

注销

unset($_SESSION['your_sess_name']); 
session_destroy(); 
+0

只是使用session_start();在页面的顶部对于这个问题已经足够了。我找到了答案,谢谢。 –

+0

如果你找到答案然后接受它,阅读常见问题的细节。 – DS9

+0

我不让你兄弟!你什么意思? –

1

包括session_start();在每个地方,你需要会话的网页的第一道防线。它不好打开每页和每页。

另外要检查,如果会议是开放与否,你可以包括下面的代码

<?php 
if(strlen(sessionid()) > 0){ 
    //session exists 
    echo "Session Started!"; 
}else{ 
    echo "No Session Found!"; 
} 
?> 

您还可以在一个单一的文件上面的代码,并要求其在需要的会话页面。

+0

多数民众赞成在一个简单的答案对吗?我想你的答案帮助我..谢谢你LoneWOLFs –

+0

@FranklinVaz我的荣幸... – LoneWOLFs

1

SESSION是非持久cookie,它将在所有页面上可用,直到浏览器关闭。 SESSION的最大使用期限取决于您在该会话中停留的时间,一旦您关闭了浏览器窗口,会话将由浏览器终止。

简单地说,在所有的PHP文件的顶部:您可以拨打:

<?php 
session_start(); 
if(isset($_SESSION['name']) && $_SESSION['name'] == 'some value')){ 

} 
?> 
+0

谢谢。有效 –

1

首先创建一个文件作为config.php。在这个文件中写你的条件像这样的:

session_start(); 
if((!isset($_SESSION['session_name'])) and (!isset($_GET['lgact']))) 
{ 
header("location:".SITE_URL."index.php"); 
exit; 
} 

,然后就在您的网页文件。 include("config.php");
希望这是你找到的。