2009-09-01 158 views
-5

我有一個從我的用戶登錄到應用程序的php頁面。它工作正常。 昨天,突然間用戶能夠登錄,但被迫退出並重新導向登錄頁面。自動註銷

我的數據庫已登錄用戶的登錄時間,約2小時後自動解決此問題。

爲什麼會這樣?


在下面的代碼中,它將檢查會話值,如果找不到,則重定向到錯誤頁面。 昨天,即使設置了會話值,它也會重定向到錯誤頁面。

<?php 
if($_SESSION['ucd']<>"" && $_SESSION['sid']<>"" && $_SESSION['sid']<>0) 
{ 
$query="select count(*) from active_sessions where user_cd='".$_SESSION['ucd']."' 
and session_no='".$_SESSION['sid']."' and START_TM like DATE_FORMAT(now(),'%Y-%m-%d%')"; 
//echo $query; 
$cnt=$dbop->select($query); 
if($cnt[0] == '0') 
{ 
$sender = "sender=".urlencode($_SERVER['PHP_SELF']); 
session_unset(); 
header("Location:../login/error.html?$sender"); 
die; 
} 
else{ 
$query = "update active_sessions set LAST_ACTIVITY = NOW() WHERE SESSION_NO = ".$_SESSION['sid']; 
mysql_query($query); 
?> 

<?php 
} 
} 
else 
{ 
$sender = "sender=".urlencode($_SERVER['PHP_SELF']); 
session_unset(); 
header("Location:../login/error.html?$sender"); 
die; 
} 
?> 
+0

@shantanuo ..將標題從「自動註銷」更改爲「自動註銷」。如果你需要認爲舊的更好,請回滾更換。 – Shoban 2009-09-01 06:45:47

+1

你將不得不發佈一些關於你的登錄方式的最小代碼,或者至少描述它!現在,你基本上在問:「有一次,我的程序沒有工作,爲什麼?」 – derobert 2009-09-01 06:49:53

+2

我無法想象如何回答這個問題,因爲它太模糊了。 – Fenton 2009-09-01 07:31:21

回答

2

我沒有看到在session_start()在你的代碼的任何地方。