Хочу сделать на сайте таймер обратного отсчета на заполнение веб формы
Что сделала
1. В шаблоне
2. В компоненте
Надо сделать, так чтобы когда человек заходит на страницу с веб формой запускался счетчик и если страницу обновить он так бы и не сбрасывался до полного обнуления
может у кого есть предложения на тему?
Что сделала
1. В шаблоне
Код |
---|
<?//echo '<pre>'; print_r($arResult["SECONDS_TO_END_STRING"]); echo '</pre>';?> <div id="learn-test-timer" title="<?=GetMessage("LEARNING_TEST_TIME_LIMIT");?>"><?=$arResult["SECONDS_TO_END_STRING"]?></div> <script type="text/javascript"> var clockID = null; clockID = setTimeout("UpdateClock(<?=$arResult["SECONDS_TO_END"]?>)", 950); </script> |
2. В компоненте
Код |
---|
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die(); require_once($_SERVER["DOCUMENT_ROOT"].$componentPath."/functions.php"); ?><? $arResult = Array( "SECONDS_TO_END" => 0, "SECONDS_TO_END_STRING" => 0, ); //вытаскивала время сервера $site_format = CSite::GetDateFormat("SHORT"); $php_format = CDatabase::DateFormatToPHP($site_format); $new_time = date($php_format, time()); // пыталась настроить таймер относительно времени сервера, работает, но отталкивается относительно абсолютного значения $arResult["SECONDS_TO_END"] = 1200 - (time()-MakeTimeStamp($new_time)); $arResult["SECONDS_TO_END_STRING"] = _TimeToStringFormat($arResult["SECONDS_TO_END"]); либо // таймер работает, 10 минут, но при каждом обновлении страницы запускается сначала, как с этим бороться? $arResult["SECONDS_TO_END"] = 600; $arResult["SECONDS_TO_END_STRING"] = _TimeToStringFormat($arResult["SECONDS_TO_END"]); |
может у кого есть предложения на тему?