Постоянные куки-файлы PHP в IE исчезают, когда сессия заканчивается - PullRequest
0 голосов
/ 07 ноября 2011

Не могу поверить, что это озадачивает меня, но ...

Весь код для http://dev.mysite.com/cookie.php гласит:

<?php
setcookie("foo", "bar", time()+2629743, "/", ".mysite.com");
var_dump($_COOKIE);
?>

Весь код для http://dev.mysite.com/cookie2.php гласит:

<?php
var_dump($_COOKIE);
?>

Я открываю IE9. Я иду на первый URL. Выход:

массив (0) {}

Не уверен, что с этим, просмотр заголовков ответов в IE dev tools ясно показывает следующее:

Set-Cookie: foo=bar; expires=Thu, 08-Dec-2011 05:13:17 GMT; path=/; domain=.mysite.com

Я обновляю страницу. Выход:

array (1) {["foo"] => string (3) "bar"}

Хорошо, вот мое печенье. Опять же, просмотр информации о файлах cookie в инструментах разработчика показывает мне:

ИМЯ ФУ VALUE bar ДОМЕН mysite.com ДОРОЖКА / EXPIRES 08/12/2011 05: 24: 00

Magic. Теперь я закрываю IE, снова открываю и перехожу ко второму URL. Который должен просто выгружать все содержимое куки. Выход:

array (0) {}

Очевидно, я где-то удивительно глуп, но где?

1 Ответ

0 голосов
/ 07 ноября 2011

Относительно первой части вашей проблемы:

$_COOKIE не устанавливается в PHP во время первого выполнения PHP, оно просто передается в браузер. Вот почему он появляется во второй раз, потому что ваш браузер отправляет его обратно в PHP, а PHP загружает его в $_COOKIE.

Можете ли вы отредактировать свое сообщение, чтобы оно показывало реальные примеры текста домена в файле cookie или, по крайней мере, делало вымышленные домены согласованными?

РЕДАКТИРОВАТЬ: просматривая домен из вашего фактического списка файлов cookie в средствах разработки, я выполнил точные шаги, которые вы описали в своем сообщении. После закрытия IE8 я вернулся на первую страницу, и там была информация о куки.

Ваша проблема где-то в IE9. Есть ли в настройках javascript одинаковые файлы cookie? Происходит ли эта потеря с файлами cookie для других сайтов в вашей установке IE9?

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