Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: обратный отсчет
Форумы портала PHP.SU » PHP » Программирование на PHP » обратный отсчет

Страниц (1): [1]
 

1. greysells - 26 Февраля, 2009 - 17:31:46 - перейти к сообщению
Здравствуте, вот такая интересная вещь.
Необходимо,что бы при клике на ссылку начинался обратный осчет времени до события.
например после клика появляется надпись: "вы кликнули на ссылку и теперь у вас есть 24ч. что бы правильно ответить на наш ворпос". и если пользователь обновит страницу через 2ч., то у него отобразится вместо 24ч. , цифра 22ч. ))

================================ ======
для этой задумки реализовал следующее:

$hors_start=intval(time()/3600)+48;
$ostatok=$hors_start-intval(time()/3600);

но при обновлении страницы переменная $hors_start тоже успешно изменяет свое значение.

ВОПРОС: как сделать так что бы при клике на ссылку, переменная сохранялась и при последующем обновлении скрипта не изменялаась?
2. valenok - 26 Февраля, 2009 - 17:51:07 - перейти к сообщению
записать можно в базу данных, в файл, в сессии, в куки, в другом процессе демоне, в оперативной памяти, где угодно.
3. Гость - 27 Февраля, 2009 - 15:04:27 - перейти к сообщению
Цитата:
Записать можно в базу данных, в файл, в сессии, в куки, в другом процессе демоне, в оперативной памяти, где угодно.
Тут еще важно решить - всетаки на сервере хранить значение или у клиента Улыбка
4. NebsteR - 27 Февраля, 2009 - 17:51:23 - перейти к сообщению
но при этом надо однозначно идентифицировать пользователя, чтобы знать он-ли 2 часа назад "стартовал" или нет... куки неплохой вариант, но если сохранять в куки время старта, будет просто заменить куки чтобы фальсифицировать это дело... имхо надо использовать одновременно куки и бд... скажем в куки сохранять случайное 11-знаковое число-id (mtrand();, длина int в бд), а в бд к этому id сопоставлять время старта...
5. Dastar - 27 Февраля, 2009 - 20:50:33 - перейти к сообщению
можно еще по ip делать проверку. А еще сессии существуют.
6. MOst_53 - 28 Февраля, 2009 - 19:35:38 - перейти к сообщению
мне кажется $_SESSIO['ostatok'] вполне подойдет.
CODE (text):
скопировать код в буфер обмена
  1.  
  2. if ($_SESSION['ostatok']) {
  3.   $hors_start = $_SESSION['ostatok'];
  4. } else {
  5.   $hors_start=intval(time()/3600)+48;
  6. }
  7. $_SESSION['ostatok']=$hors_start-intval(time()/3600);

 

Powered by ExBB FM 1.0 RC1