Сеанс PHP является пустым при вызове на другой странице в сафари

Мне создали сеанс, который является пустым при вызове от запроса ajax к Safari.

header.php
session_start();
$_SESSION['test'] = 'this is my session';


mypage.php
session_start();
echo $_SESSION['test']; <-- NOT WORKING ON SAFARI

Спасибо

6
задан steamboy 28 April 2010 в 23:37
поделиться

3 ответа

Работает ли он в других браузерах? Работает ли он в Safari без AJAX? Этот скрипт загружается из того же домена, в котором находится исходная страница?

По всей видимости, Safari имеет более консервативную политику в отношении файлов cookie, чем другие браузеры . Если все на стороне PHP работает, и другие браузеры работают, я бы подумал, что Safari не отправляет cookie сеанса обратно на сервер.

4
ответ дан 10 December 2019 в 02:44
поделиться

это ноль или "" ?

когда вы if (isset ($ _ SESSION ['test'])) возвращает ли оно истину?

это только сафари? если да, то это настройки вашего браузера.

Сохраняется ли ваш файл cookie сеанса успешно, и вы можете прочитать этот $ _session ['test'] на оставшейся части страницы header.php?

вы вызываете session_start () в самом начале страницы?

получаете ли вы какие-либо ошибки? если нет - вы деффо их включили?

0
ответ дан 10 December 2019 в 02:44
поделиться

Добавьте эту строку после session_start () в оба файла и сообщите мне, совпадает ли идентификатор сеанса (это означает, что вы находитесь в одном сеансе).

echo session_id();
1
ответ дан 10 December 2019 в 02:44
поделиться
Другие вопросы по тегам:

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