Есть такая проблема: Как сохранять данные ВО ВРЕМЯ того, как человек находится на сайте?
Поясню более конкретно.
Пользователь заходит на сайт и видит картинку, которую сгенерировал РНР-код. Побочные результаты (Координаты некоторых точек) необходимо сохранить для последующих генераций картинки. Пользователь продолжает сидеть на сайте. Через интервал времени (пусть это будет 10 секунд) происходит перегенерация картинки основанная на текущих и на предыдущих данных. Ещё через 10 секунд картинка снова обновится основываясь на текущих, предыдущих и предпредыдущих данных. И так до тех пор, пока пользователь не уйдёт с этой страницы.
Как сохранять этот массив? (я работаю под виндой) Как сделать, чтобы для каждого пользователя был "свой" массив? И как сделать так, чтобы когда пользователь уйдёт, и его массив удалился?
Спустя 2 минуты, 46 секунд (8.07.2010 - 10:22) linker написал(а):
Ajax для обновления картинки и сессии для хранения координат
Спустя 12 минут, 35 секунд (8.07.2010 - 10:35) MoZart.Element написал(а):
А без аякса?
Спустя 46 минут, 30 секунд (8.07.2010 - 11:21) sergeiss написал(а):
Куки, наверное...
1. Хранятся они на клиенте, а не на сервере.
2. JS может записать куки в любой момент работы со страницей.
3. ПХП может прочитать куки перед выгрузкой страницы клиенту и использовать данные для формирования этой страницы (или картинки - не суть важно).
Обновление происходит каким образом, кто является инициатором? Просто таймер в JS, или нажатие пользователем чего-то, или авторефреш страницы?
1. Хранятся они на клиенте, а не на сервере.
2. JS может записать куки в любой момент работы со страницей.
3. ПХП может прочитать куки перед выгрузкой страницы клиенту и использовать данные для формирования этой страницы (или картинки - не суть важно).
Обновление происходит каким образом, кто является инициатором? Просто таймер в JS, или нажатие пользователем чего-то, или авторефреш страницы?
Спустя 33 минуты, 34 секунды (8.07.2010 - 11:55) MoZart.Element написал(а):
Цитата (sergeiss @ 8.07.2010 - 08:21) |
Куки, наверное... 1. Хранятся они на клиенте, а не на сервере. 2. JS может записать куки в любой момент работы со страницей. 3. ПХП может прочитать куки перед выгрузкой страницы клиенту и использовать данные для формирования этой страницы (или картинки - не суть важно). Обновление происходит каким образом, кто является инициатором? Просто таймер в JS, или нажатие пользователем чего-то, или авторефреш страницы? |
Инициатором обновления является таймер JS.
Можете объяснить пункты 2 и 3 более подробно, или дайте ссылочку, где почитать?
Заранее спасибо!
Спустя 1 час, 15 минут, 33 секунды (8.07.2010 - 13:10) sergeiss написал(а):
Если кратко: куки - это такие небольшие файлы, хранящиеся именно у клиента и связанные с определенным сайтом. "Отдавать" их браузер должен только тому сайту, который их установил. И у каждого браузера свои куки!!! Т.е. если ты записал что-то в куки в Опере, то ИЕ об этом не узнает никогда. И наоборот.
Хранить куки можно "вечно", в отличие от короткоживущих сессий.
В твоём случае всё достаточно легко сделать, т.к. рефреш идет через JS. Он, т.е. JS сначала записывает в куки то, что нужно, а потом даёт команду на перезагрузку. PHP запрашивает эти куки... Всё, взаимодействие налажено.
А ссылку могу дать только наиболее общую
Заходишь в любую поисковую систему (yandex, google, ....) и вводишь в строке поиска "javascript cookie". Получаешь много информации, читаешь, вникаешь. А потом вводишь там же "php cookie" и опять же читаешь, вникаешь...
Хранить куки можно "вечно", в отличие от короткоживущих сессий.
В твоём случае всё достаточно легко сделать, т.к. рефреш идет через JS. Он, т.е. JS сначала записывает в куки то, что нужно, а потом даёт команду на перезагрузку. PHP запрашивает эти куки... Всё, взаимодействие налажено.
А ссылку могу дать только наиболее общую
Заходишь в любую поисковую систему (yandex, google, ....) и вводишь в строке поиска "javascript cookie". Получаешь много информации, читаешь, вникаешь. А потом вводишь там же "php cookie" и опять же читаешь, вникаешь...
Спустя 4 минуты (8.07.2010 - 13:14) linker написал(а):
sergeiss, JS и куки тут видимо не помогут, если картинку генерит пхп, то и данные нужно сохранять в пхп (теже куки или сессии).
Спустя 26 минут, 17 секунд (8.07.2010 - 13:41) sergeiss написал(а):
linker - ты сам понял, что сказал???
Цитата (linker @ 8.07.2010 - 14:14) |
JS и куки тут видимо не помогут, если картинку генерит пхп, то и данные нужно сохранять в пхп (теже куки или сессии). |
Куки - они не в ЖС или ПХП, они у юзера на компе! ЖС или ПХП только пишут или читают их. Одни и те же куки!!! И они, т.е. куки, как раз для того и нужны, чтоб данные хранить некоторое время либо обмениваться данными таким образом между ЖС и ПХП.
Спустя 45 минут, 5 секунд (8.07.2010 - 14:26) linker написал(а):
sergeiss, это ты не понял. Пользователь зашел на страницу, ему пхп отдал картинку и сохранил в куках/сессию какие-то координаты, далее по будильнику JS вызывается опять пхп, который берет координаты из куков/сессии и строит новую картинку и сохраняется новые координаты в куках/сессии.
Читайте, ответственность за сохранение координат в данном случае должен нести пхп, а JS должен только по будильнику толкать пхп.
Все элементарно и проще некуда.
Читайте, ответственность за сохранение координат в данном случае должен нести пхп, а JS должен только по будильнику толкать пхп.
Все элементарно и проще некуда.
Спустя 14 минут, 59 секунд (8.07.2010 - 14:41) sergeiss написал(а):
linker - я-то как раз поняли и автора темы, и свои ответы. А вот ты - не понял меня.
Повторяю. В данном случае требуется что? Чтобы при перезагрузке страницы, иницииируемой JS, были переданы данные на сервак. Вот я и предлагаю СНАЧАЛА ЗАПИСАТЬ В КУКИ НОВЫЕ УНИКАЛЬНЫЕ ДАННЫЕ, а потом уже делать перезагрузку. После чего, в процессе формирования новой страницы, ПХП эти данные считает и использует.
Повторяю. В данном случае требуется что? Чтобы при перезагрузке страницы, иницииируемой JS, были переданы данные на сервак. Вот я и предлагаю СНАЧАЛА ЗАПИСАТЬ В КУКИ НОВЫЕ УНИКАЛЬНЫЕ ДАННЫЕ, а потом уже делать перезагрузку. После чего, в процессе формирования новой страницы, ПХП эти данные считает и использует.
Цитата (linker @ 8.07.2010 - 15:26) |
Читайте, ответственность за сохранение координат в данном случае должен нести пхп |
Понимаешь ли... Ну не может ПХП взять данные у клиента, не может!!! Потому что он только на сервере работает. JS должен ему эти данные подготовить. Потому что JS как раз у клиента находится.
А теперь включи здравый смысл и логику, перечитай еще раз, что я говорил ранее.
Спустя 15 минут, 19 секунд (8.07.2010 - 14:56) linker написал(а):
Цитата |
Вот я и предлагаю СНАЧАЛА ЗАПИСАТЬ В КУКИ НОВЫЕ УНИКАЛЬНЫЕ ДАННЫЕ, а потом уже делать перезагрузку |
В корне неверно, если бы JS строил картинку, тогда да, но в данном случае картинку строит PHP, а значит ему и отвечать за сохранение данных.
Цитата |
онимаешь ли... Ну не может ПХП взять данные у клиента, не может!!! Потому что он только на сервере работает. JS должен ему эти данные подготовить. Потому что JS как раз у клиента находится. |
и условие ТС
Цитата |
Пользователь заходит на сайт и видит картинку, которую сгенерировал РНР-код. |
Так кто должен сохранять результаты своей работы JS или PHP? Тот кто строит или тот кто толкает PHP?
Цитата |
Ну не может ПХП взять данные у клиента, не может!!! |
Это вообще убило , $_SESSION[], $_COOKIE[]
Собственно алгоритм:
1. Пользователь заходит на страницу.
2. Выполняется PHP-скрипт, который генерит картинку и сохраняет координаты в куки/сессию (массив тупо serialize()
3. По таймауту выполняется JS (ajax или тупо рефрешь всей страницы), который толкает PHP.
4. PHP-скрипт берет данные из кука/сессии (unserailize(); ), строит новую картинку, добавляет новые координаты и пихает обратно в куки/сессию (serialize()
5. переход на п.3.
Спустя 37 минут, 15 секунд (8.07.2010 - 15:33) sergeiss написал(а):
Цитата (linker @ 8.07.2010 - 15:56) |
Это вообще убило, $_SESSION[], $_COOKIE[] |
Почитай, что такое сессия и где она хранится... Про куки я тебе сам же и говорю, а ты от них "отбрыкиваешься" всеми конечностями
А теперь еще раз настойчиво прошу: ВКЛЮЧИ ЗДРАВЫЙ СМЫСЛ!!! И вникни в написанный тобой алгоритм. Особенно в п.2.
Цитата (linker @ 8.07.2010 - 15:56) |
1. Пользователь заходит на страницу. 2. Выполняется PHP-скрипт, который генерит картинку и сохраняет координаты в куки/сессию (массив тупо serialize() 3. По таймауту выполняется JS (ajax или тупо рефрешь всей страницы), который толкает PHP. 4. PHP-скрипт берет данные из кука/сессии (unserailize(); ), строит новую картинку, добавляет новые координаты и пихает обратно в куки/сессию (serialize() 5. переход на п.3. |
Как только пользователь что-то изменит, то как ПХП об этом узнает-то? Я говорю о том, что JS должен записать что-то в куки, а ты категорически против этого.
Спустя 9 минут, 5 секунд (8.07.2010 - 15:42) linker написал(а):
Цитата |
Почитай, что такое сессия и где она хранится... |
Какая разница где оно хранится, главное что она уникальна для каждого пользователя и данные из нее доступны PHP для перегенерации картинки.
После того, как юзверь ушел с сайта, эти данные удаляются см. тз топикстартера.
Цитата |
мой пункт 2 2. Выполняется PHP-скрипт, который генерит картинку и сохраняет координаты в куки/сессию (массив тупо serialize()) |
А что вас тут смущает? Что-то из ряда вон выходящее? PHP не имеет GD? Или незнакомая функция serialize()? Или PHP не умеет работать с куками/сессиями?
Цитата |
Как только пользователь что-то изменит, то как ПХП об этом узнает-то? Я говорю о том, что JS должен записать что-то в куки, а ты категорически против этого. |
Что пользователь изменит? По ТЗ товарища MoZart.Element пользователь сидит на странице и тупо смотрит как меняется картинка. Можно поконкретнее, что вас ставит в тупик?
Спустя 52 минуты, 59 секунд (8.07.2010 - 16:35) MoZart.Element написал(а):
Цитата (sergeiss @ 8.07.2010 - 11:41) |
В данном случае требуется что? Чтобы при перезагрузке страницы, иницииируемой JS, были переданы данные на сервак. Вот я и предлагаю СНАЧАЛА ЗАПИСАТЬ В КУКИ НОВЫЕ УНИКАЛЬНЫЕ ДАННЫЕ, а потом уже делать перезагрузку. После чего, в процессе формирования новой страницы, ПХП эти данные считает и использует. |
Дело в том, что РНР на текущем шаге ещё не знает текущих координат. Он их вычисляет перед тем, как изображение создать. А вот все предыдущие уже должны храниться в куках, откуда их и требуется считывать РНР для генерации изображения. Если я всё правильно понял, то единственной сложностью будет преобразование массива данных в строку для сохранения в куки и разбор строки при считывании из куков. нельзя ошибиться.
А JS только запускает РНР-обработчик на исполнение.
Спустя 4 минуты, 22 секунды (8.07.2010 - 16:40) MoZart.Element написал(а):
Повторюсь, если я правильно понял алгоритм работы, описаный здесь http://www.poiu.ru/lessons/index.php-11.htm
то функция
то функция
setcookie(имя куки, значение, срок годности, информация о пути, домен, защищенность)позволяет записывать куки, а чтение куки производится по имени
echo $my_cookie;
Спустя 18 минут, 8 секунд (8.07.2010 - 16:58) MoZart.Element написал(а):
Цитата (sergeiss @ 8.07.2010 - 12:33) |
Как только пользователь что-то изменит, то как ПХП об этом узнает-то? Я говорю о том, что JS должен записать что-то в куки, а ты категорически против этого. |
Уважаемые эксперты.
В данном случае пользователь ничего не изменяет, от просто на страницу заходит. А дальше периодическая работа РНР. Я уже примерно представил алгоритм, сейчас реализовываю.
Алгоритм такой:
1.
- Пользователь зашёл на страницу.
- Запустился РНР-скрипт.
- Так как куки ещё нет, то ничего не считываем.
- Проводим вычисления, получаем точку 1,записываем её в массив М.
- Полученные числа конкатенируем в строку с разделителями и эту строку записываем в куки.
- Генерим картинку по полученному массиву М и отдаём её в браузер.
2.
- Через таймаут JS запускает обновление картинки, вызывается тот же РНР-скрипт.
- Считываем куки.
- Разбираем строку значения куки на составляющие, получаем последовательность чисел, забиваем их в массив М.
- Проводим вычисления, получаем точку 2,записываем её в массив М.
- Полученные числа конкатенируем в строку с разделителями и эту строку записываем в куки.
- Генерим картинку по полученному массиву М и отдаём её в браузер.
Единственно, возникает вопрос: длина значения куки чем-нибудь ограничена?
Если да, то надо создавать массив куков, если это возможно для одного сайта.
И ещё вопрос, как проще и корректнее всего разобрать строку вида 111&222 на числа 111 и 222? Можете ссылочку подкинуть?
Спустя 1 час, 54 минуты, 18 секунд (8.07.2010 - 18:52) sergeiss написал(а):
Ну, ежели юзер ничего не мацает, а только смотрит... То тогда linker прав
Но если юзер должен хоть как-то повлиять, то тогда мой алгоритм надо использовать
Но если юзер должен хоть как-то повлиять, то тогда мой алгоритм надо использовать
Цитата (MoZart.Element @ 8.07.2010 - 17:40) |
Повторюсь, если я правильно понял алгоритм работы, описаный здесь http://www.poiu.ru/lessons/index.php-11.htm то функция setcookie(имя куки, значение, срок годности, информация о пути, домен, защищенность) позволяет записывать куки, а чтение куки производится по имени echo $my_cookie; |
Для ЧТЕНИЯ куки используется глобальный массив $_COOKIE!!! А echo используется только для вывода информации в браузер.
Спустя 13 часов, 30 минут, 28 секунд (9.07.2010 - 08:23) MoZart.Element написал(а):
Цитата (sergeiss @ 8.07.2010 - 15:52) |
Для ЧТЕНИЯ куки используется глобальный массив $_COOKIE!!! А echo используется только для вывода информации в браузер. |
То есть обращение к куки выглядит так: $X = $_COOKIE[my_cookie] ?
Спустя 11 дней, 16 минут (20.07.2010 - 08:39) MoZart.Element написал(а):
Уважаемые эксперты!
Возникла проблема...
Суть вот в чём:
Листинг страницы 1
Листинг обработчика imcreate_05.php
Листинг фукции ЖС
Возникла проблема...
Суть вот в чём:
- пользователь зашёл на сайт на страницу 1 (Листинг ниже)
- так как куки ещё нет, то всё ок - запускается рнр-скрипт(Имеется ввиду другой обработчик, который генерит изображение), генерит картинку, записывает куки.
- затем пользователь решает на том же сайте посетить другую страничку 2. куки при этом, как я понимаю, не удаляются.
- теперь пользователь решил вернуться на страницу 1. Для корректной работы алгоритма куки надо обнулить. использую для этого
setcookie ('cookie');
Однако куки не обнуляются.
Листинг страницы 1
<?php
if ($_COOKIE['cookie'])
{ setcookie ('cookie'); }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html>
<head>
<!-- Заголовок окна -->
<title>ывапрол.</title>
<!-- Подключаем внешние скрипты -->
<script src="http://www.navtest1.ru/js/func.js"></script>
<!-- Используем русскую кодировку -->
<meta http-equiv="content-type" content="text/html; charset=Windows-1251">
<!-- Подключаем стилевые файлы -->
<link rel="stylesheet" type="text/css" href="styles/stylenavtest1.css">
</head>
<body onload="StartUpdateTheImage('im_Main', 5000)">
<!-- ********************************************************** -->
<?php
require("header2.php");
?>
<!-- ********************************************************** -->
<td>
<!-- Описание текста центральной ячейки -->
<img id="im_Main" alt="Рувапролшщ."
src="data/dt_05/imcreate_05.php"
width="581" height="581" hspace="10" vspace="10" border="0">
<!-- Конец описания текста центральной ячейки -->
</td>
<?php
require("footer.php");
?>
Листинг обработчика imcreate_05.php
<?php
if ($_COOKIE['cookie'])
{
$Status = "yes";
$cookie = $_COOKIE['cookie'];
}
else
{ $Status = "no"; }
$rnd = $_REQUEST['rnd']; //Это случайное число для против кэширования. Используется также для тестирования.
header ("content-type: image/png");
$img = imagecreate (581,581) or die ("Не удаётся инициализировать новый поток изображения.");
$bgcolor = imagecolorallocate ($img, 0, 0, 0); // фоновый цвет
$LScolor = imagecolorallocate ($img, 0, 255, 100); // цвет линий шкалы
$textcolor = imagecolorallocate ($img, 233, 14, 91);// цвет текста
$fn = 3; // Номер шрифта
$fh = imagefontheight($fn); // высота шрифта
$fw = imagefontwidth($fn); // ширина шрифта
//Рисуем линии
imageline ($img, 5, 290, 575, 290, $LScolor);
imageline ($img, 290, 5, 290, 575, $LScolor);
//Рисуем значения шкал линий
imagestring ($img, $fn, 293, 20, "0", $LScolor);
imagestring ($img, $fn, (560 - (2 * $fw) - 1), 290, "90", $LScolor);
imagestring ($img, $fn, (290 - (3 * $fw) - 1), (560 - $fh), "180", $LScolor);
imagestring ($img, $fn, 23, (290 - $fh), "270", $LScolor);
//Выводим текст
imagestring ($img, 1, 5, 5, "Designed by MoZart", $textcolor);
imagestring ($img, 1, 5, 15, "Used COOKIE", $textcolor);
imagestring ($img, 1, 5, 25, "Status", $textcolor);
imagestring ($img, 1, 50, 25, $Status, $textcolor);
imagestring ($img, 1, 5, 35, "cookie", $textcolor);
imagestring ($img, 1, 50, 35, $cookie, $textcolor);
imagestring ($img, 1, 5, 45, "rnd", $textcolor);
imagestring ($img, 1, 50, 45, $rnd, $textcolor);
//записываем куки
setcookie ('cookie', $rnd);
//Выводим изображение в браузер
imagepng ($img);
?>
Листинг фукции ЖС
function StartUpdateTheImage(imname, updtime) {
var img = document.getElementById(imname);
if (!img) return;
var src = img.src; // исходный урл
// если там уже есть вопрос, то &rnd= иначе ?rnd=
src += (src.indexOf('?') >= 0 ? '&' : '?') + 'rnd=';
setInterval(function(){
img.src = src + Math.floor(Math.random() * 1000000);
}, updtime); // через updtime мс.
}
Спустя 3 часа, 3 минуты, 47 секунд (20.07.2010 - 11:42) Joker написал(а):
Цитата (MoZart.Element @ 20.07.2010 - 10:39) |
Для корректной работы алгоритма куки надо обнулить. использую для этого setcookie ('cookie'); Однако куки не обнуляются. |
setcookie ('cookie','',-1);
Спустя 49 минут, 58 секунд (20.07.2010 - 12:32) MoZart.Element написал(а):
Пробовал, не помогает.
Спустя 1 час, 4 минуты, 11 секунд (20.07.2010 - 13:37) linker написал(а):
Я так и не понял, почему алгоритм вдруг перестанет правильно работать, если юзверь перешел на другую страницу, а потом вернулся.
Спустя 24 минуты, 37 секунд (20.07.2010 - 14:01) MoZart.Element написал(а):
При каждом обращении к "генератору изображения" (рнр-скрипт imcreate_05.php) будут происходить определённые вычисления (естесственно, их сейчас нет в листинге) эти вычисления происходят с интервалом в 5 сек. На выходе этих вычислений координаты точки на рисунке (белая точка) и результирующие координаты точки на рисунке (красная точка). Белые точки вычисляются при каждом обращении и складываются в куки, а красная точка вычисляется каждый раз на основании текущего и всех предыдущих вычислений.
Если пользователь ушёл со страницы, а потом снова на неё зашёл, оставаясь всё время на сайте, то необходимо обнулить историю белых точек (то есть куки), иначе положение красных будет некорректным в связи с алгоритмом вычислений.
Поэтому и надо обновить куки!
Если пользователь ушёл со страницы, а потом снова на неё зашёл, оставаясь всё время на сайте, то необходимо обнулить историю белых точек (то есть куки), иначе положение красных будет некорректным в связи с алгоритмом вычислений.
Поэтому и надо обновить куки!
Спустя 1 час, 10 минут, 55 секунд (20.07.2010 - 15:12) linker написал(а):
А в чем неправильность таки будет? Ну ушел, потом вернулся, данные-то сохранены, вот и строй новую картинку.
Спустя 55 минут, 31 секунда (20.07.2010 - 16:08) MoZart.Element написал(а):
Может быть не стоит обсуждать ТЗ?
Алгоритм вычислений будет работать некорректно. Точка!
Нужно обнулить куки. Точка!
Показанный мною выше метод ПОЧЕМУ-ТО не работает?
Вопрос - почему?
Единственная мысль... Генератор изображения находится в папке "ниже", чем скрипт страницы, из-под которого пытаюсь обнулить куки. Если причина в этом, то как это обойти?
Алгоритм вычислений будет работать некорректно. Точка!
Нужно обнулить куки. Точка!
Показанный мною выше метод ПОЧЕМУ-ТО не работает?
Вопрос - почему?
Единственная мысль... Генератор изображения находится в папке "ниже", чем скрипт страницы, из-под которого пытаюсь обнулить куки. Если причина в этом, то как это обойти?
Спустя 16 часов, 39 минут, 48 секунд (21.07.2010 - 08:47) linker написал(а):
Ну попробуй setcookie('cookie', '', time() - 1); А вообще, если у тебя ошибка в алгоритме, то ТЗ тут ни причем, потому и пытаюсь докопаться.
Спустя 6 часов, 2 минуты, 12 секунд (21.07.2010 - 14:50) MoZart.Element написал(а):
Ладно, этот трабл я обошёл, по-тупому через использование всё того же случайного числа.
Теперь другой вопрос.
Вот скрипт, к которому происходит обращение каждые 5 сек (только то, что важно).
И вот в чём проблема. Как я понимаю должно быть следующее: когда появляется кука, она считывается, восстанавливается в массив, к этому массиву присоединяется ещё один элемент, затем снова сворачивается в строку и записывается в куку. Это так должно быть. На деле имею следуюшее: кука просто переписывается текущим значением $rnd.
Почему так происходит?
Теперь другой вопрос.
Вот скрипт, к которому происходит обращение каждые 5 сек (только то, что важно).
<?php
header ("content-type: image/png");
//Получаем случайное число
$rnd = $_REQUEST['rnd'];
//Если его ещё нет - обнуляем куки
if ( !$rnd )
{ setcookie ( 'GloXA', '', -1 ); }
//Проверка наличия куки
if ( !$_COOKIE['GloXA'] )
{
$Status = "no";
$GloXA = array();
}
else
{
$Status = "yes";
$GloXA = unserialize ( $_COOKIE['GloXA'] );
}
$GloXA[] = $rnd;
$img = imagecreate (581,581) or die ("Не удаётся инициализировать новый поток изображения.");
$bgcolor = imagecolorallocate ($img, 0, 0, 0); // фоновый цвет
$textcolor = imagecolorallocate ($img, 233, 14, 91);// цвет текста
$vpos = 5;
imagestring ($img, 1, 480, 5, "GloXA", $textcolor);
foreach ($GloXA as $i => $value)
{
imagestring ($img, 1, 520, $vpos, $value, $textcolor);
$vpos += 10;
}
//Запись в куки
$GloXA = serialize ( $GloXA );
setcookie ( 'GloXA', $GloXA);
//Выводим изображение в браузер
imagepng ($img);
?>
И вот в чём проблема. Как я понимаю должно быть следующее: когда появляется кука, она считывается, восстанавливается в массив, к этому массиву присоединяется ещё один элемент, затем снова сворачивается в строку и записывается в куку. Это так должно быть. На деле имею следуюшее: кука просто переписывается текущим значением $rnd.
Почему так происходит?
Спустя 5 минут, 34 секунды (21.07.2010 - 14:55) linker написал(а):
не забываем время жизни ставить для куки, думается мне у тебя ни чего не работает исключительно по этой причине
setcookie('GloXA', $GloXA, time() + 3600);
Спустя 21 минута, 31 секунда (21.07.2010 - 15:17) MoZart.Element написал(а):
Цитата (linker @ 21.07.2010 - 11:55) |
не забываем время жизни ставить для куки, думается мне у тебя ни чего не работает исключительно по этой причине setcookie('GloXA', $GloXA, time() + 3600); |
Почему именно time() + 3600 ?
Ведь, если время жизни не указывается явно, кука должна жить пока сайт не закрыт, не так ли? А так, получается, что она ещё час существовать будет. Зачем?
Может проблема в работе функций serialize/unserialize ?
Спустя 9 минут, 23 секунды (21.07.2010 - 15:26) linker написал(а):
Это просто пример. Serialize/unserialize нормально должны работать. Еще раз повторяю, удаляй куки так setcookie('cookie', 'ddd', time() - 1);
Спустя 24 минуты, 19 секунд (21.07.2010 - 15:50) MoZart.Element написал(а):
Это проблему не решает!
Не дописывается следующий элемент, когда я сижу на странице, то есть куки в этот период не удаляются!
Не дописывается следующий элемент, когда я сижу на странице, то есть куки в этот период не удаляются!
Спустя 53 минуты, 8 секунд (21.07.2010 - 16:44) MoZart.Element написал(а):
У меня такой ещё вопрос:
Если удалять куки во время работы сайта, она удаляется полностью или только обнуляется и существует с пустым значением???
Если удалять куки во время работы сайта, она удаляется полностью или только обнуляется и существует с пустым значением???
Спустя 1 день, 15 часов, 21 минута, 24 секунды (23.07.2010 - 08:05) linker написал(а):
Пробуй
$array = unserialize(stripslashes($_COOKIE['cookie']));