Не могу прочитать cookie в php - PullRequest
2 голосов
/ 29 января 2010

Я не могу прочитать cookie, используя $ _COOKIE ['mycookie']. Я использую PHP-Apache на Linux box. Есть ли в php.ini или httpd.conf какие-либо сайты для активации cookie?

Спасибо

Ответы [ 4 ]

7 голосов
/ 29 января 2010

Правильно ли вы установили файл cookie?

<?php
$value = 'something from somewhere';

setcookie("TestCookie", $value);
setcookie("TestCookie", $value, time()+3600);  /* expire in 1 hour */
setcookie("TestCookie", $value, time()+3600, "/~rasmus/", ".example.com", 1);
?>   
<?php
// Print an individual cookie
echo $_COOKIE["TestCookie"];
echo $HTTP_COOKIE_VARS["TestCookie"];

// Another way to debug/test is to view all cookies
print_r($_COOKIE);
?>
4 голосов
/ 08 января 2013

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

Так что, если вы напишите cookie из

/var/www/html/mySystem/action/writeCookie.php

вы не сможете прочитать его с

/var/www/html/mySystem/view/readCookie.php

В качестве решения я поместил все свои файлы для записи файлов cookie в верхний каталог, что-то вроде:

/var/www/html/mySystem/writeCookie.php
0 голосов
/ 29 января 2010

Предполагается, что браузер возвращает cookie, когда вы ожидаете. Существуют инструменты как для MSIE (iehttpheaders), так и для Firefox (данные взлома, панель инструментов веб-разработчика и многие другие), которые позволяют вам видеть фактические отправленные / полученные заголовки HTTP. В качестве альтернативы вы можете использовать инструмент для прослушивания телефонных разговоров, например wireshark.

С

0 голосов
/ 29 января 2010

http://php.net/manual/en/ini.core.php

Проверьте настройку gpc_order в php.ini, чтобы убедиться, что файлы cookie не переопределяются.

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