Браузер Chrome не находит и не сохраняет первую сессию, установленную на PHP - PullRequest
0 голосов
/ 11 июня 2019

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

Вся эта концепция прекрасно работает практически на всех браузерах, в которых я ее тестировал.Только Chrome не может справиться с этим.Первый сеанс, который я установил в Chrome, не сохраняется.В дальнейшем все сеансы сохраняются и читаются так, как я ожидал.

У меня есть скрипт для всех процессов на моем сайте.Например, sContact.php отвечает за контактную форму.В конце скрипта я сохраняю все сообщения в сеансе.

На каждой странице содержимого есть включение messages.php, в котором выводятся все сообщения в сеансе.Благодаря этой настройке я могу установить сообщение, и сообщение будет отображаться, куда бы я ни перенаправлял пользователя.

sContact.php конец сценария

$alerts = [];
if (count($alerts) === 0) {
    $alerts[] = HTML_SUCCESS_START . 'some message' . HTML_END;
    $_SESSION['alerts'] = $alerts;
    ?> <script> window.location = "some URL"; </script> <?php
    exit;

Сценарий начинается с session_start();

Шаблон message.php, который повторяет сообщения

if (isset($_SESSION['alerts'])) {
  if (!empty($_SESSION['alerts'])) {
    if (count($_SESSION['alerts'] > 0)) {

      foreach ($_SESSION['alerts'] as $alert) {
        echo $alert;
      }

    }
  }
}

unset($_SESSION['alerts']);

Сайт контента начинается с session_start();, в котором message.php включен с include_once "message.php".

Как уже говорилось, это прекрасно работает для всех браузеров, кроме Chrome.

Я немного новичок в этой области и довольно растерян.Надеюсь, у вас, ребята, есть идеи и, возможно, даже решение;)

Спасибо за вашу помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...