2009-09-01 3 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

+1

Вам нужно будет опубликовать минимальный код того, как работает ваш вход, или, по крайней мере, описать его! Прямо сейчас, вы в основном спрашиваете: «Однажды моя программа не сработала. Почему?» – derobert

+2

Я не могу представить, как ответить на этот вопрос, поскольку он настолько расплывчатый. – Fenton

ответ

2

Я не вижу session_start() в любом месте вашего кода.

Смежные вопросы