prrrrrrr
@prrrrrrr
Верстаю сразу на PHP.

Как убрать одну сессию для всех?

Подскажите, такой вопрос. Делаю сайт, на пол пути столкнулся с такой проблемой:

На сайте есть регистрация и вход пользователей. Допустим, захожу под аккаунтом №1 с хрома, всё нормально, работает. После, захожу под аккаунтом №2 с оперы, тоже вроде бы всё нормально. Но, если я обновляю страницу в хроме, он выводит что я вошел под юзером уже не №1, а №2. После нажатия на выход с любого браузера, в другом браузере сессия тоже закрывается. В чём может быть проблема?

Я делал куки до 2050 года. Может здесь что то не так?
session_start();
$value = 'ValueCache';
setcookie("PHPSESSID", $value, time()+999999999);
  • Вопрос задан
  • 93 просмотра
Пригласить эксперта
Ответы на вопрос 1
@ynblpb_spb
дятел php
У вас неверное представление о работе с сессиями

1. сессии - отдельно, куки - отдельно (это две разные технологии, хоть и сессии для идентификации номера сессии используют PHPSESSID куку)

2. при старте сессии session_start() пхп проверяет наличие куки PHPSESSID и если она обнаружена, то использует сессию с этим идентификатором. сессия физически хранится в специальном файле на сервере, там где исполняется код пхп. если PHPSESSID не обнаружено, то создаётся новая сессия, пользователю автоматически устанавливается кука и вам ничего в этом случае руками не нужно делать setcookie('PHPSESSID'....);
Сессию надо использовать, если вы чётко понимаете, что на вашем сайте пользователь проведет некоторое кол-во времени в рамках одного посещения и будет перемещаться по страницам и вам нужно сохранить информацию специфичную для пользователя. например, вы можете сохранять историю посещений страниц конкретным пользователем вашего сайта и в отдельной менюшке где-то выводить эту историю пользователю. эта информация живёт недолго после ухода пользователя с сайта, поэтому ориентироваться на нёё в долгосрочное перспективе не стоит

3. куки - это механизм запоминания конкретной информации в пользовательском браузере. например, вам надо запомнить, что на вашем сайте пользователь в опросе проголосовал за 1й пункт голосования. вы сохраняете номер опроса и номер ответа в куках и эта информация будет с пользователем намного дольше (пока пользователь не почистит куки, пока не кончится срок хранения куки установленный вами и пока пользователь не сменит браузер). более долгосрочное хранение информации, но намного меньшее (4кб на куку вроде бы позволительно)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы