ezd
Guest
Не сохраняются сессии.
Написал несколько своих функций (класс) для замены сессий, что бы хранить в mysql. Так вот проблема, при закртытии страницы браузера, у него куки не сохраняются и при следующем заходе естественно, не отправив ID сессии, пхп генерирует ему новый.
В кратце выглядит так: При каждом заходе на страницу session_start(); и никаких setcookie не используется. Тут все работает, как надо. Когда юзер пытается авторизоваться на сайте, то я пишу setcookie($this->session_name,$this->session_id,time()+$time,"/"); и при отладке вижу, всё это в хейдер отправляется (типа Set-Cookie: SESSID=r7783 и т.д. с экспайр датой в GMT через пару месяцев). Но стоит закрыть страницу и зайти заного, так браузер снова ничего не выдает и получает новый ID. (куков на диске тоже не наблюдается, хотя вообще от сайтов браузер их получает, проверял на ИЕ и Опере)
Есть правда одно наблюдение..., когда я делаю setcookie($this->session_name,$this->session_id,time()+$time,"/");, то в заголовки попадает "похожая" надпись два раза, а именно первый раз вставляется откуда-то сама, то есть стандартная без expire даты, а просто SESSID=2904... и path=/. Потом идут остальные заголовки и потом только моя правильная строка. В какой момент вставляется первая строка с сессией я понять не могу, но явно не моими скриптами, а как-то автоматически.
Почему сессии не сохраняются? Есть какие-то идеи? Если нужна какая-то дополнительная информация может, которую не выложил, типа скрипта или каких-то настроек пхп?
Написал несколько своих функций (класс) для замены сессий, что бы хранить в mysql. Так вот проблема, при закртытии страницы браузера, у него куки не сохраняются и при следующем заходе естественно, не отправив ID сессии, пхп генерирует ему новый.
В кратце выглядит так: При каждом заходе на страницу session_start(); и никаких setcookie не используется. Тут все работает, как надо. Когда юзер пытается авторизоваться на сайте, то я пишу setcookie($this->session_name,$this->session_id,time()+$time,"/"); и при отладке вижу, всё это в хейдер отправляется (типа Set-Cookie: SESSID=r7783 и т.д. с экспайр датой в GMT через пару месяцев). Но стоит закрыть страницу и зайти заного, так браузер снова ничего не выдает и получает новый ID. (куков на диске тоже не наблюдается, хотя вообще от сайтов браузер их получает, проверял на ИЕ и Опере)
Есть правда одно наблюдение..., когда я делаю setcookie($this->session_name,$this->session_id,time()+$time,"/");, то в заголовки попадает "похожая" надпись два раза, а именно первый раз вставляется откуда-то сама, то есть стандартная без expire даты, а просто SESSID=2904... и path=/. Потом идут остальные заголовки и потом только моя правильная строка. В какой момент вставляется первая строка с сессией я понять не могу, но явно не моими скриптами, а как-то автоматически.
Почему сессии не сохраняются? Есть какие-то идеи? Если нужна какая-то дополнительная информация может, которую не выложил, типа скрипта или каких-то настроек пхп?