Cookie не установлен

У меня есть файл cookie, который не будет установлен на удаленном сервере, и работает локально. Нет сообщений об ошибках, var_dump получает меня Null, echo пуст.

<php setcookie('ymp','14', time()+3600); session_start(); ?> 

Я могу настроить javascript cookie. Начальный тег – строка 1 страницы.

Есть идеи

Благодарю Гэри

Редактировать

У меня есть некоторые комментарии, которые я разместил ниже, это 3-файлный процесс.

Первая страница – установить cookie, как указано выше.

Страница 2 У меня есть для отладки

 <php var_dump($_COOKIE['ymp']); echo'<br />'.$_COOKIE['ymp'];?> 

Страница 3, и снова все это работало локально.

  <?php if($_COOKIE['ymp']!=='14') {die('Sorry, you have not had your delightful little pastry yet.... try again.');} 

?>

Я установил js-файл cookie и изменил код, чтобы отразить другое имя файла cookie, и он работал нормально.

Я также сбросил время на +86400 из-за двухчасовой разницы времени на сервере, хотя я не думаю, что это действительно необходимо.

Спасибо за помощь

Gary

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

Кроме того, session_start() не влияет на файлы cookie. Это две разные вещи. (Сессии обычно используют файлы cookie для хранения идентификатора сеанса, но это не имеет значения).

Это довольно странно – я предполагаю, что это может иметь какое-то отношение к настройке PHP.

Посмотрите, что такое возвращаемое значение функции setcookie – оно может быть FALSE если вывод уже отправлен перед вызовом функции. Вы упоминали, что это правильно в начале вашего скрипта, однако могут быть другие сущности, выдающие данные (возможно, предварительно выполненные скрипты на сервере)?

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

Просьба указать любой другой соответствующий код и указать, как вы проверяете, установлены ли файлы cookie.

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

Спасибо всем за вашу помощь … слишком занят, чтобы провести исследование CSI относительно того, как и почему.

Gary

Это может быть связано с тем, что вы не указываете путь и / или домен для файла cookie. Попробуйте это вместо этого:

 <?php setcookie('ymp','14', time()+3600, '/', 'yourdomain.com') ?>