Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Как изменить инфу в куках


Автор: Nikitozz 7.10.2007, 23:42
Помогите пожалуйста, например отправил в кукис такое значение:

setcookie("YouHaveBeenHere", "1", time()+3600);

так вот как изменить вот эту единичку в кукисе, скажем на двоечку?

Автор: chin 7.10.2007, 23:49
Код

$_COOKE['YouHaveBeenHere'] = 2;

 smile 

Автор: Nikitozz 8.10.2007, 00:02
Цитата(chin @ 7.10.2007,  23:49)
Код

$_COOKE['YouHaveBeenHere'] = 2;

 smile

Этот вариант насколько я понимаю изменит значение в массиве $_COOKIE, но не изменит значение в самом файле у клиента. А мне надо знать как у клиента изменить

Автор: SelenIT 8.10.2007, 00:03
Поставить заново?

Автор: console 8.10.2007, 00:07
Код

setcookie("YouHaveBeenHere", "2", time()+3600);

Автор: Nikitozz 8.10.2007, 00:08
Цитата(SelenIT @ 8.10.2007,  00:03)
Поставить заново?

Имеешь ввиду изменить в массиве, удалть старую, установить новую с новым значением?

ОК, а как удалить? smile

Автор: chin 8.10.2007, 00:09
Цитата(Nikitozz @  8.10.2007,  00:02 Найти цитируемый пост)

Этот вариант насколько я понимаю изменит значение в массиве $_COOKIE, но не изменит значение в самом файле у клиента.

Ой, фу, напутал с сессиями  smile 

Nikitozz, 
А ведь сначала написал именно так:
Код

setcookie("YouHaveBeenHere", "2", time()+3600);


Да, именно так.

Автор: Nikitozz 8.10.2007, 00:11
Цитата(console @ 8.10.2007,  00:07)
Код

setcookie("YouHaveBeenHere", "2", time()+3600);

хотел уже так сделать, но сервак возвращает ошибку, типо не хочет отправлять

Warning: Cannot modify header information - headers already sent by (output started at z:\home\test2.ru\www\test.php:12) in z:\home\test2.ru\www\test.php on line 16

Автор: chin 8.10.2007, 00:15
Значит у Вас до этого был уже какой-то вывод.
Пользуйтесь ob_start(), если не знаете как обойти.

Код

echo 'Something';
setcookie('test', 1);

- ошибка! Вывод уже был на строке 1.

Код

ob_start();
echo 'Something';
setcookie('test', 1);

- нет ошибки. Вывод будет осуществлен в самом конце работы скрипта.

Но самый правильный вариант, это не делать вывода перед установкой куки:
Код

setcookie('test', 1);
echo 'Something';

Автор: Nikitozz 8.10.2007, 00:26
Цитата(chin @ 8.10.2007,  00:15)

Но самый правильный вариант, это не делать вывода перед установкой куки:

Код

setcookie('test', 1);
echo 'Something';

Блин спасибо!!!!!!!!!!!!!!!!!!!!!!!!

действительно, сначала вызвал функцию setcookie, а потом распечатал содержимое и все получилось!!!!!!!

до этого наоборот было

Добавлено @ 00:28
только другая проблема есть теперь, значение меняется при каждой перезагрузке страницы
но эту ерунду я исправлю

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)