php проверяет cookie, чтобы установить другой cookie - PullRequest
2 голосов
/ 01 июня 2011

Я устанавливаю файл cookie, используя этот код:

setcookie("Blah","user",time()+86400);

Затем я проверяю этот файл cookie на другой странице и настраиваю другой файл cookie, а затем перенаправляю на другую страницу

    if (isset($_COOKIE["Blah"]))
    {
        setcookie("Demo","user",time()+86400);
    }
$url="cd/bar/home.php"
header ("Location: $URL");

однако, когда он попадает на перенаправленную страницу, он действует так, как будто второй файл cookie не установлен (если это важно, вторая страница находится в другом подкаталоге, поэтому я перехожу из .com / fu / home.php в.com / bar / home.php)

на перенаправленной странице, я получил эту проверку второго cookie

<?php
if (isset($_COOKIE["Demo"]))
{
?>
html
<?php
}
?>

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

1 Ответ

2 голосов
/ 01 июня 2011

На странице руководства для setcookie:

Значением по умолчанию [аргумента $path] является текущий каталог, в котором устанавливается файл cookie.

Таким образом, файл cookie устанавливается только с путем /fu/.Если вы хотите установить глобальный путь, скажите это явно:

setcookie("Demo","user",time()+86400, '/');
...