2010-07-30 2 views
1

Я просто пытаюсь установить и использовать файл cookie, но я ничего не могу хранить.Использование файлов cookie с php

При входе в систему, я использую:

setcookie("username", $user);

Но, когда я использую Firefox и веб-разработчиков плагин Куки -> Просмотр Cookie Информация Там нет имени пользователя куки.

Кроме того, когда я пытаюсь получить доступ к значению с последующей страницы с помощью

$_COOKIE["username"]

Он возвращается пустой/пустой

var_dump(setcookie("username", $user)); РЕЗУЛЬТАТ: bool(true)

и

var_dump($_COOKIE) РЕЗУЛЬТАТ: конкретные куки не существует (другие есть)

Я сделал еще несколько испытаний ...

Куки существует после авторизации (первая страница), но исчезает, когда я иду в другой (2-й странице) и потеряно навсегда ...

Есть ли какие-либо заголовки, которые должны присутствовать или не присутствовать?

+0

После входа в систему вы не меняете поддомены (или даже полный домен), не так ли? – jasonbar

ответ

0

Спасибо всем за обратную связь ... Адитья привести меня к дальнейшему анализу печенье, и я обнаружил, что путь был вопрос ...

Путь Войти был/admin /, а затем я перенаправляю обратно в корень ...

Спасибо всем за вашу помощь и обратную связь!

1

http://php.net/manual/en/function.setcookie.php

Попробуйте поставить $ истекают параметр в какой-то момент в будущем. Я считаю, что он по умолчанию равен 0, что находится в далеком прошлом.

+1

No. Если установлено равным нулю, файл cookie истекает в конце сеанса браузера. – thomasrutter

+0

Спасибо thomasrutter - вот как я это понял ... –

0

Возможно, файл cookie истек, потому что $expire по умолчанию - 0 секунд со времен Unix. (docs)

Попробуйте

setcookie("username", $user, time() + 1200); 

который истекает через 20 минут после набора (в зависимости от времени клиента).

+0

No.Если значение $ expire равно нулю, файл cookie истекает в конце сеанса браузера. – thomasrutter

0

Используйте var_dump() для setcookie (..), чтобы увидеть, что возвращается. Также можно сделать то же самое с $ _COOKIE, чтобы узнать, установлен ли ключ.

1

Убедитесь, что вы правильно настроили параметр домена в случае изменения URL-адреса после перехода на другую страницу после входа в систему. Вы можете прочитать больше о параметре домена на http://php.net/manual/en/function.setcookie.php

+0

URL-адрес определенно меняется, но домена нет. Домен определенно остается неизменным! –