удалить переменную cookie средствами php

M
На сайте с 03.06.2012
Offline
73
2230

Здравствуйте, записал в cookie с помощью javascript переменную test и мне нужно ее удалить на другой страннице средствами php. Делаю так

setcookie("test","",time());
но ничего не происходит. Помогите пожалуйста решить этот вопрос. Спасибо!!!
sabotage
На сайте с 14.02.2007
Offline
192
#1

Возможно проблема с видимостью куки (4-ый параметр, path). При установке укажи "/".

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#2

Кука по умолчанию доступна в текущей директории(где ставили куку) и ниже по дереву.

Ну например если поставили на www.site.ru/index.php то она доступна везде.

Если ставите www.site.ru/catalog1/index.php то она будет доступна только для всех файлов которое находятся в www.site.ru/catalog1/*. Как раз для этого и существует параметр path, который позволяет указать область видимости(актуальности) куки.

Для начала можете просто на странице сделать так

print_r($_COOKIE);

И сразу же станет ясно, дело в path или нет.

Подпись))
M
На сайте с 03.06.2012
Offline
73
#3
sabotage:
Возможно проблема с видимостью куки (4-ый параметр, path). При установке укажи "/".

вот функция установки cookie на javascript

function set_cookie(name, value, expires)
{
if (!expires)
{
expires = new Date();
}
document.cookie = name + "=" + escape(value) + "; expires=" + expires.toGMTString() + "; path=/";
}

вызываю так:

function test(value) {
var test = "test";
expires = new Date(); // получаем текущую дату
expires.setTime(expires.getTime() + (1000 * 86400 * 365)); // вычисляем срок хранения cookie
set_cookie (test, value, expires,); // устанавливаем cookie с помощью функции set_cookie
}

path - вроде прописан

---------- Добавлено 27.07.2012 в 10:22 ----------

Милованов Ю.С:
Кука по умолчанию доступна в текущей директории(где ставили куку) и ниже по дереву.
Ну например если поставили на www.site.ru/index.php то она доступна везде.
Если ставите www.site.ru/catalog1/index.php то она будет доступна только для всех файлов которое находятся в www.site.ru/catalog1/*. Как раз для этого и существует параметр path, который позволяет указать область видимости(актуальности) куки.
Для начала можете просто на странице сделать так
print_r($_COOKIE);

И сразу же станет ясно, дело в path или нет.

делал так

var_dump ($_COOKIE);

то переменная есть в массиве, так в чем может быть проблема, если не в path

IL
На сайте с 20.04.2007
Offline
435
#4

<?php setcookie("test",null,555,'/');

И да.. последняя запятая в js лишняя.. Такой код точно работает?
set_cookie (test, value, expires,); // устанавливаем cookie с помощью функции set_cookie  
... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#5

Попробуйте еще время поставить time()-10000. Время действия куки меньше текущего времени, и тогда браузер не будет ее отдавать.

M
На сайте с 03.06.2012
Offline
73
#6
ivan-lev:
<?php setcookie("test",null,555,'/');

И да.. последняя запятая в js лишняя.. Такой код точно работает?

Спасибо, все заработало =)))). А запятую я случайно в посте поставил.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий