Сессии в пхп

PHPer

Новичок
Сессии в пхп

Запущена сессия А
Требуется, зная id сессии Б, изменить в ней некоторые переменные и вернуться в сессию А.
Подскажите, как это лучше сделать?
 

PHPer

Новичок
Romantik
Мне нужно в чате изменять от админа переменные в сессиях юзеров, чтобы выкидывать их из чата, к примеру. Сейчас это на базе сделано, но хочу без нее, т.к. у меня на базу нагрузка большая.

-~{}~ 25.06.05 02:24:

Насколько я знаю, с помощью session_id можно задать ид сессии, если функцию вызвать перед session_start(). Вот как поступитьт, если одна сессия уже запущена, нужно открыть другую, а потом вернуться к первой?
 

Tor

Новичок
если написать свои обработчики сессии и хранить их в базе, то желаемое реализуется предельно просто
 

SiMM

Новичок
> ... то желаемое реализуется ...
... однако не приобретает бОльшего смысла. Скорее, кто-то просто пытается использовать сессии не по назначению.
 

PHPer

Новичок
Автор оригинала: SiMM
> ... то желаемое реализуется ...
... однако не приобретает бОльшего смысла. Скорее, кто-то просто пытается использовать сессии не по назначению.
Да, я так подумал, что использовать тут сессии - стрелять из пушки по воробьям. Можно просто флаг какой-нить сделать, тот же файл, который сигнализирует о том, что нужно переменные сессии с базой синхронизовать
 

[sid]

Новичок
А собственно говоря почему нет. Если вы знаете ID сессии, то можете и получить имя файла в котором сессия хранится. А структура хранения данный в файле просто элементарна. Это сериализованный массив. Загружаете строку из файла сессии, десириализуете ее. Получаете массив с сессией. Если не ошибаюсь имя файла это "sess_{$id}", где $id - это ид сессии!Путь к директории с сессиями можно в инишнике интепретатора найти!
 

ForJest

- свежая кровь
PHPer
[m]session_write_close[/m]
[m]session_id[/m]
[m]session_start[/m]
Если закрыть одну, потом стартануть другую, сделать все действия и снова стартануть первую, то вполне думаю может получиться.
Хотя решение не кажется мне удачным, но думаю сработает.
 
Сверху