faecker
5.05.2016 - 15:45
Возникла необходимость изменения сессионной переменной без обращения пользователя к скрипту. То есть без его участия.
Теоретически это можно сделать через сессионный файл.
-$string = file_get_contents ('/tmp/sessions/sess_sid')
- находим и заменяем регуляркой нужную переменную
- file_put_contents ('/tmp/sessions/sess_sid', $string)
Если рукам отредактировать сессионный файл все работает.
Могут в такой замене быть подводные камни?
Есть более простой способ изменить сессионную переменную без запроса клиента?
Заметил такую странность, php сериализует числовые переменные в файл, то как число:
index|i:898989;
то как строку
inex|s:1:"1";
От чего это зависит?
AllesKlar
5.05.2016 - 16:03
Из целей безопасности, вебсервер напрямую тебе это сделать не даст.
Если же сервак настроен так, что это можно сделать, то имеет смысл начинать уже сегодня искать новую работу.
_____________
[продано копирайтерам]
faecker
5.05.2016 - 16:28
Цитата (AllesKlar @ 5.05.2016 - 16:03) |
Из целей безопасности, вебсервер напрямую тебе это сделать не даст. Если же сервак настроен так, что это можно сделать, то имеет смысл начинать уже сегодня искать новую работу. |
Почему нет? Сервер для одного сайта. Доступ к серверу имеют пара-тройка своих людей. Никаких приходящих.
Сохрани сессию в бд если тебе надо что бы разные технологии могли к ней обратиться тогда и своя реализация этого механизма через Redis / SQL бд
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.