2010-05-12 2 views
0

at index.php У меня есть форма для заполнения некоторых настроек. сообщение формы в setsettings.phpПочему не читает php мой cookie?

at setsettings.php использует данные формы и устанавливает некоторые файлы cookie и перенаправляет обратно на index.php. если i print_r ($ _ COOKIE) на setsettings.php, все хорошо. но ничего не приходит в index.php, массив $ _COOKIE пусто :(

Знает ли кто, как я идти о решении этой

Я установил Det настройку (setsettings.php):

/* Write new cookie */ 
$expire = 60 * 60 * 24 * 60 + time(); // ~2 months 
setcookie("user_var_001", $_POST['selection'], $expire); 

и в index.php print_r ($ _ COOKIE) оказывается пустым,

ответ

2

копипаст из PHP: setcookie комментариев:

При установке куки на странице, переадресовывает, печенье должно быть установлено после вызова заголовка («Location: ....»);

Такие, как:

<?php 
header('Location: http://www.example.com/'); 
setcookie('asite', $site, time()+60*60, '/', 'site.com'); 
?> 

Я предлагаю искать эту страницу для "перенаправления", есть также некоторые проблемы, описанные о IIS.

P.S. Попробуйте без перенаправления и посмотрите, установлен ли cookie после обновления страницы.

+0

Я думаю, что моя главная проблема заключалась в том, что у печенья не было домена ... после установки одного он работает как шарм: D – Jason94

+0

follow up: теперь у меня проблемы с доменом. если я публикую свои настройки, я получаю перенаправление и загружает файл cookie ... отлично работает. но если я загружу страницу, новую вкладку, она не может читать cookie – Jason94

+0

Трудно догадаться, исходный пример или более подробная информация может быть полезна. Загружает ли файл cookie на одной вкладке при обновлении/навигации? Вы установили, что домен принимает поддомены (например, www) с .example.com? Подумайте. в начале важно, не помню 100%. – Indrek

0

setcookie() функция вызывается до того, как код был напечатан

0

Попробуйте напечатать?