Удаление кук (IE 8)

igortik

Новичок
Был слегка удивлен, мягко говоря ...

if(setcookie('order['.$good_id.']','',time()-360000,'/')) echo 1;

die;

этот примитивный код используется для сноса конкретной записи куки и для отправки значения "1" java-скрипту через $.get в качестве результата.

Но примудрый IE даже 8 версии иногда спотыкается на удалении кукиса. Т.е. кука, либо, не всегда создается при внесении товара, либо, не всегда удаляется.

Например, записали массив:

$_COOKIE['order'][1]
$_COOKIE['order'][2]
$_COOKIE['order'][3]

Первые 2 сносит без проблем, 3-ий с попытки так 4-5.. когда как вздумается..

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

Так это значение выводит отладчик кривобраузера:
a%3A2%3A%7Bs%3A5%3A%22price%22%3Bs%3A3%3A%22250%22%3Bs%3A5%3A%22count%22%3Bi%3A1%3B%7D

Кто-нибудь сталкивался с проблемой установки куки-файлов и, соответственно, их сноса именно в в этом "великолепном" творении мелкософта?
 

SiZE

Новичок
Кто-нибудь сталкивался с проблемой установки куки-файлов и, соответственно, их сноса именно в в этом "великолепном" творении мелкософта?
Нет. Я думаю удаление и сохранение кук получилось у разработчиков лучше всего. Некоторые попадаются на нечитании спецификации размещения кук в зависимости от уровня домена.
 

igortik

Новичок
SiZE
я не против того, что что-то мог пропустить. Хотя эта задача тривиальнейшая. И, повторюсь, куки сносятся в произвольном порядке... может удалить, а может и нет, вот это ставит в ступор.
Может IE не особо дружит с "массиво-подобными" куками.

p.s. уровень домена у меня для моего примера всегда один и тот же.
И только в IE проблема, исключительно.
 

korpus

злой бобёр
Приведи какой-нибудь простейший код, вызывающий проблему с куками. Мы его потестируем.
 

igortik

Новичок
Приведи какой-нибудь простейший код, вызывающий проблему с куками. Мы его потестируем.
PHP:
setcookie('order['.$good_id.']',$data,time()-360000,'/')
пожалуйста ... вместо $good_id любой числовой индентификатор, в качестве $data какой-нить небольшой сериализованный массив, состоящий из нумерического ключа и кириллических значений
PHP:
$data = serialize($some_array)
.
В качестве времени как положительное, так и отрицательное значение для соответствующих целей.

В этих ситуациях именно IE8 ведет себя так, как я описал выше.
 

igortik

Новичок
у меня вот еще есть подозрение, что это не в кукисах проблема, а в том, что скрипт добавления товара и удаления, соответственно, вызывается через аякс. И говнобразуер просто кеширует запрос периодически, хоть и квери стринг содержит разные линки.

Это предположение.
Я наткнулся на это сегодня, писав очередную работу, связанную с кукисами и аякс, залатал соответствующим заголовком.
 

SiZE

Новичок
Не мало важный момент. Установка/удаление кук должно происходить до вывода в браузер каких либо заголовков и тем более текста. Была у меня давно подобная твоей проблема, то ставилось то не ставилось (ставилось обычно только после того как обновлю страницу раза 2). Еще проверь, что ты во всех местах установки/удаления не указываешь домен и одинаковый путь.
 
Сверху