Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: странные вещи с сессиями...
 
 автор: elenaki   (30.12.2005 в 12:23)   письмо автору
 
 

странные вещи происходят с сессиями...
вхожу как администратор, работаю, в какой-то момент нужно сходить на сайт, посмотреть, что получилось, открываю сайт в другом окне браузера (кнопкой из админской панели). если я на сайте авторизуюсь, а потом сделаю logout, меня выкинет сессия и из админского модуля!
почему? ведь разные окна, разные сессии, имена кукисов тоже разные для админа и юзера...
почему session_destroy() из юзерской части убивает сразу две сессии? B админской части такого не происходит. если я выхожу из админской части, из юзерской меня не выкидывает при этом

   
 
 автор: Artemy   (30.12.2005 в 12:27)   письмо автору
 
   для: elenaki   (30.12.2005 в 12:23)
 

Вообще-то одна и та же сессия работает для всех окон, если один и тоже сайт! Единственое, что я замечал, что для разный броузеров своя сессия!

   
 
 автор: elenaki   (30.12.2005 в 12:34)   письмо автору
 
   для: Artemy   (30.12.2005 в 12:27)
 

а вот и нет! на другом сайте с такой же системой не выкидывает! специально только что
проверила. внесла нового юзера с именем и паролем администратора, зашла и вышла, из
админской панели не выкинуло при этом!

   
 
 автор: Loki   (30.12.2005 в 12:36)   письмо автору
 
   для: elenaki   (30.12.2005 в 12:34)
 

Так смотря как logout реализован: можно потереть переменные отвечающие за допуск, а можно все переменные сессии. Как там реализовано?

   
 
 автор: elenaki   (30.12.2005 в 12:46)   письмо автору
 
   для: Loki   (30.12.2005 в 12:36)
 

это на одном


session_start();
unset($_SESSION["userid"]);
session_destroy();
$referpage = $HTTP_SERVER_VARS['HTTP_REFERER'];
header("Location:$referpage");

session_start();
session_unset();
session_destroy();
header("location:index.php?msg=4");


это на другом

session_start();
unset($_SESSION["userid"]);
unset($_SESSION["userlanguage"]);
session_destroy();
$referpage = $HTTP_SERVER_VARS['HTTP_REFERER'];
header("Location:$referpage");

session_start();
session_unset();
session_destroy();
header("location:index.php?msg=4");


никакой разницы

   
 
 автор: Artemy   (30.12.2005 в 12:51)   письмо автору
 
   для: elenaki   (30.12.2005 в 12:46)
 

Зачем удалять переменную сессии, если сессия потом вообще рушится?

   
 
 автор: Artem S.   (30.12.2005 в 13:34)   письмо автору
 
   для: Artemy   (30.12.2005 в 12:51)
 

А как храниться сессия?
Возможно 2 варианта - cookie и парамтр в url
В первом случае ессно для всех оконо одного браузера cookie одни и теже.

   
 
 автор: cheops   (30.12.2005 в 13:37)   письмо автору
 
   для: elenaki   (30.12.2005 в 12:23)
 

Под сессию заводится сессионная cookie - уничтожение сессии приводит к уничтожению этой куки и файла-сессии на сервере. Обычно для таких вещей заводят именнованные сессии, которые можно уничтожать по отдельности.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования