Forum Webscript.Ru

Программирование => PHP => Тема начата: FreeSpace от 24 Февраля 2002, 17:57:29

Название: Куки не удаляется
Отправлено: FreeSpace от 24 Февраля 2002, 17:57:29
Задача:
Есть два файла (полные пути):
/www/login.php
и
/www/exit/logout.php
Содержимое login.php:

$pass = "pAsSwOrD";
SetCookie("cookie_pass", $pass, time()+3600);
if ($cookie_pass != "") {
echo "Кук установлен";
} else {
echo "Кук не установлен";
}
?>
 
Содержимое logout.php:

SetCookie("cookie_pass");
?>
 
После первого запуска login.php пишет "Кук не установлен", после повторного запуска пишет "Кук установлен" (ну это понятно...).
Но если запустить logout.php, а потом снова login.php, продолжает писать "Кук установлен".
Простите за длинный пример, просто не знал, как короче объяснить мою проблему.
Я так понимаю, что для каждой директории браузер хранит отдельные куки?
Подскажите, где здесь грабли и как через них переступить?
Название: Куки не удаляется
Отправлено: от 24 Февраля 2002, 19:47:06
SetCookie("cookie_pass","");
Название: Куки не удаляется
Отправлено: FreeSpace от 24 Февраля 2002, 20:33:04
А какая разница?
Так тоже не удаляет... :(
Название: А так?
Отправлено: Dr. Faust от 25 Февраля 2002, 00:24:06
setcookie("cookie_pass", $pass, time()-3600);
Название: Куки не удаляется
Отправлено: от 25 Февраля 2002, 12:07:14
Попробуй так:
SetCookie("cookie_pass"," ");
Название: Куки не удаляется
Отправлено: FreeSpace от 25 Февраля 2002, 16:59:17
Спасибо за ответы, но ни так, ни так :(
Может это потому, что я на собственном комьютере (Win/Apache/PHP4/MySQL) локально проверяю?
Название: Куки не удаляется
Отправлено: Dm от 25 Февраля 2002, 18:03:49
Копнул твои примеры как есть.
Проверял на:
w2k pro + Apache + php 4.1.1 + IE 6.0

Результат: все работает.
login.php - кук устанавливается, первый раз пишет "не установлен", второй - "установлен". Далее logout.php.
Потом login.php - "кук не установлен". :)

Вывод: у тебя не работает из-за конфига или я не знаю... ;)
Название: Куки не удаляется
Отправлено: FreeSpace от 25 Февраля 2002, 19:34:44
Я так и знал...
Как обычно невезет :(
Ну ладно, буду мучать php.ini или конфиги Апача.
Всем ещё раз спасибо!
Название: да не в этом дело
Отправлено: Foshvad от 02 Марта 2002, 10:52:18
То что ты под windows значения не имеет, если PHP корректно шлет заголовки. По-моему, ты просто переключаешься между login.php и logout.php в разных окнах IE; А если в одном был кук, и во втором ты его сотрешь, что в первом он не исчезнет (не запутал?)
Короче если сначала первое окно закрыть, а потом зайти на logout.php, то и на login.php кука не будет.
Вот :)
Название: Куки не удаляется
Отправлено: AliMamed от 02 Марта 2002, 11:59:50
ie6 не даст удалить из одной директории куку, установленную в другой
Название: Куки не удаляется
Отправлено: FreeSpace от 02 Марта 2002, 12:34:06
Спасибо за информацию, я уже решил проблему.
Теперь устанавливаю кук так:
setcookie("cookie_pass", $pass, time()+3600, "/");
а удаляю так:
setcookie("cookie_pass", "", 0, "/");
Работает отлично.
Ещё раз всем спасибо!