Попробуй меня перевести или другие приключения SESSION?

112
27 октября 2021, 06:40

Такой вопрос. У меня есть страница, где указана ссылка на личную страницу, по которой ты проходишь, и она в штатном режиме генерирует твою личную страницу. Я задумался, а вдруг будет неавторизованный пользователь? И что тогда делать?

Я начал углубляться в вопрос, и пришёл к выводу, что неавторизованный пользователь должен отправляться авторизовываться, если он хочет в личный кабинет!

Но вот незадача. С таким кодом:

  if (isset($_COOKIE["PHPSESSID"])) {
header('Location: office.php?id='. $_SESSION['id']);
} else {
  header ('Location: index.html');
}

Он авторизованных пользователей отправляет на их личную страницу, а не авторизованным пользователям, он генерирует их личную временную страницу без каких-либо данных.

Вопрос состоит в том, как мне отправить их на другую страницу, в данным случае, на главную.

На сколько я понял, проблема в этой строчке:

  if (isset($_COOKIE["PHPSESSID"])) {

Но что я туда только не вписывал, результата не достигал. Подскажите пожалуйста, в какую сторону мне двигаться?

С уважением, Вячеслав.

Answer 1

Всё! Вопрос решён. Всем кто пытался мне помочь в этом вопросе, благодарность.

Суть решения заключается в этих строчках:

  if(isset($_SESSION['id'])) {
header('Location: office.php?id='. $_SESSION['id']);
}
  else {
    session_destroy();
    header ('Location: index.html');
  }

А генерировал ЛК судя по всему, из-за не разрушенной сессии, которая стартовала в начале документа.

READ ALSO
Обработать изображение Blob

Обработать изображение Blob

обрезаю изображение переде загрузкой через cropperjs Отправляю на сервер

123
Мультиязычность в bitrix

Мультиязычность в bitrix

Планирую добавить на сайт второй языкКак делаются переключатели языковые и как делается перевод на второй язык статичной информации на сайте?

88
MadelineProto: channels.editBanned не работает (Telegram API)

MadelineProto: channels.editBanned не работает (Telegram API)

Использую MadelineProto для взаимодействия с Telegram APIНужно забанить/выкинуть пользователя из приватного канала – для этого есть метод channels

141