Forum Webscript.Ru
Программирование => PHP => Тема начата: Mаster от 13 Мая 2003, 14:46:08
-
Приветствую
Вот скрипт авторизации:
if (!isset($login)){$login="";}
if (!isset($password)){$password="";}
include("mysql_connect.php");
$query = mysql_query("SELECT * FROM admin");
$admin = mysql_fetch_array($query);
session_start();
session_register("start");
if(!isset($_SESSION[\'start\'])) {
if($login == $admin[\'login\'] && $password == $admin[\'password\'] ) {
$_SESSION[\'start\'] = time();
} else {
echo ("
echo ("
");
echo ("
");
exit;
}
}
?>
Проблема следующая.
Авторизовываюсь.
Закрываю браузер.
Опять набираю адрес администрирования из которого инкляйдится скрипт, а сессия жива :(
Посмотрел session_get_cookie_params(), lifetime = 0
Почему сессия тогда не умирает? Раньше умирала. У меня на локале умирает а на серваке нет. Подскажите причину.
Спасибо.
-
открываешь окно браузера.
потом из него (открыть в новом окне) - еще одно.
в нем работаешь с авторизацией, закрываешь.
потом в первом набираешь адрес. кука жива и посылается.
-
Я ждал около минуты!
Все проще, вот в чем вся штука.
Полез в кукисы браузера. Физически убил файл с этим куком.
И теперь все сново работает как надо :)
Куки умирают.
Но что могло случиться что произошел такой глюк? :(
Это предсказуемо?
Код я не менял.
-
если тебе пришлось физически йбивать файл, то значит время жизни куки было все-таки отлично от нуля.
-
Наверное так, но как такое могло произойти?
Кто-нибудь сталкивался?
-
Mаster
Может такое быть, что у тебя где-то (случайно) скрипт два раза куку посылает - один раз с таймаутом 0, а другой раз - с каким-то другим.
Может ещё это из-за настроек хостера, хотя это маловероятно.
Хотя, если хостинг бесплатный... но я с таким не сталкивался.
-
Mаster
Сталкивался
Время жизни куки отлично от нуля...
-
> открываешь окно браузера.
потом из него (открыть в новом окне) - еще одно.
в нем работаешь с авторизацией, закрываешь.
потом в первом набираешь адрес. кука жива и посылается.
У меня вот какая ситуация.
В управлении, которое все прибито к файлу авторизации, там есть target=”_blank” ссылки для редактирования документов. Список будет большим и править его будут часто и не мало и поэтому меня попросили так сделать, но я не вижу в этом злого умысла.
Я сейчас проверил. Захожу в систему. Открываю новое окно, потом закрываю оба окна (как я и делал, перед тем как создать тему), захожу авторизован. Других окон открыто не было, я даже перезагрузился (правда не по этой причине), но пока не убил кукис все так и продолжалось.
Мне интересно, есть методы борьбы с такими глюками, не очень красиво если заказчик скажет, что у него на компе всегда система залогинина.
-
есть.
исправить в php.ini
session.cookie_lifetime на 0