Cookie, не работающие на различных страницах

Хорошо мне установили cookie, и я могу ясно видеть его, если я перехожу к частным данным в Firefox... хорошо поэтому, когда я повторяю его на одной странице в определенном каталоге, это работает, (www.example.com/dir), но на индексной странице сайта (www.example.com), это эхо привычки, это говорит, что cookie не установлен. Да мне включили cookie, да я пытался очистить кэш и все это. Какие-либо идеи? PHP btw

12
задан David 10 January 2010 в 21:44
поделиться

5 ответов

Какой каталог вы находитесь в том, когда файл cookie настроен?

из руководства PHP на Setcookie () , упор мой:

Путь

Путь на сервере, в котором будет доступно cookie. Если установлено значение «/», файл cookie будет доступен во всем домене. Если установлено значение «/ foo /», файл cookie будет доступен только в каталоге / foo / foo / все подкурористы, такие как / foo / bar / of домена. Значение по умолчанию - текущий каталог, в котором находится файл cookie.

23
ответ дан 2 December 2019 в 03:10
поделиться

Вы должны проверить путь, который настроен файл cookie.

Если это не '/' , есть ваш ответ!

3
ответ дан 2 December 2019 в 03:10
поделиться

В каком каталоге вы находитесь при установке файла cookie?

Из руководства PHP по setcookie () , акцент мой:

Путь

Путь на сервере, на котором файл cookie будет доступен. Если установлено значение «/», файл cookie будет доступен во всем домене. Если установлено значение «/foo/», файл cookie будет доступен только в каталоге/foo/и во всех подкаталогах, таких как/foo/bar/домена. Значением по умолчанию является текущий каталог, в котором устанавливается файл cookie.

-121--2745626-

Файлы cookie можно привязать к определенному домену, поддомену, пути и протоколу (http/https). Необходимо указать путь при настройке файла cookie в PHP:

setcookie("TestCookie", "Value", time()+3600 , '/' );

Четвертый параметр привязывает его к корню сайта и будет доступен в любом подкаталоге основного сайта.

Если вы хотите, чтобы он был доступен в главном домене и любом поддомене, укажите пятый параметр, например:

setcookie("TestCookie", "Value", time()+3600 , '/', '.example.com' );

Теперь он будет доступен для чтения по адресу:

www.example.com
example.com/newdir
awesome.example.com/newdir

-121--2745627-

Необходимо задать путь $ в setcookie () , если вы хотите получить к нему доступ во всех каталогах

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

Установите вашу опцию; Значение по умолчанию - текущий каталог, в котором находится файл cookie. Поскольку вы устанавливаете cookie в каталоге / dir, его доступно только в этом каталоге или ниже.

Вы общаетесь на это, явно установив путь, т. Е.

setcookie(name,value,expire,path,domain,secure) 

Установите путь к «/».

1
ответ дан 2 December 2019 в 03:10
поделиться

Файлы cookie могут быть привязаны к определенному домену, субдомену, пути и протоколу (http/https). Вам необходимо указать путь при установке cookie в PHP:

setcookie("TestCookie", "Value", time()+3600 , '/' );

Четвертый параметр привязывает его к корню сайта и он будет доступен в любом подкаталоге главного сайта.

Если вы хотите, чтобы он был доступен на главном домене и на любом поддомене, поставьте пятый параметр так:

setcookie("TestCookie", "Value", time()+3600 , '/', '.example.com' );

Теперь он будет доступен для чтения по адресу:

www.example.com
. example.com/newdir
awesome.example.com/newdir

20
ответ дан 2 December 2019 в 03:10
поделиться
Другие вопросы по тегам:

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