Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Нужен счетчик отсчета времени
 
 автор: Fighter   (02.02.2008 в 17:36)   письмо автору
 
 

Здравствуйте !
Нужен счетчик отсчета времени, помогите кто может..
Проблема следующая, просто счетчик на Java Script есть, и написать его не сложно, НО, при обновлении страницы, счетчик Естественно сбрасывается в начальное значание, КАК сделать так, что бы он не сбрасывался, а продолжал отсчет дальше, Есть варианты, и сам писал и в инете искал, сохранять в кукисах значение счетчика и отсчитывать оттуда.. НО при удалении кукисов, счетчик опять начинается сначала.. Нужен счетчик типа как сделано в таких браузерных играх как БК, Грани реальности и т.д. там отсчет времени идет и что бы ты не делал он продолжает отсчитывать секунды с минутами.. Облазил ОЧ много форумов и страниц в инете ничего ненашел...
предлагаю начать от исходного т.е. Скажем при определенном действии происходит 1) Берется текущее время (минуты секунды) прибовляем к ним то время насколько нам нужно запустить счетчик 2) записывается все это в БД... Потом берем все это отсчитываем минуты и секунды простым циклом сколько осталось до конца минут и секунд и запускаем простой Ява счетчик, он нужен просто для наглядности, соответственно когда страница обновляется РНР расчитывает оставшееся время и ЯВА отсчитывает его дальше, работает примерно так как я написал ниже, правда это БЕТА версия ) еще додумывать и дорабатывать надо.. ОЧ криво работает но что то такое должно получится в итоге. ! Мож кто быстрее сообразит
Заранее спасибо !

<?

$min_stop=42; // Берем из БД
$sec_stop=25; // Берем из БД

$min_now=date(i);
$sec_now=date(s);

for($i=0;$i<=2;$i++)
{

$min_now+=1;
if($min_now>=60){$min_now=0;}
if($min_now==$min_stop){$min=$i;}

}


for($i=1;$i<=60;$i++)
{
$sec_now+=1;
if($sec_now>=60){$sec_now=0;}
if($sec_now==$sec_stop){$sec=$i;}
}

?>

<script>
var time = 1000;
var seconds =<?=$sec?>;
var minuties =<?=$min?>;
var sec;
var min;
function a()
{
seconds -= 1;
if(seconds.toString().length == 1) sec = "0"+seconds;
else sec = seconds;
if(minuties.toString().length == 1) min = "0"+minuties;
else min = minuties;
document.getElementById('w').innerHTML="<b>End of time "+min+":"+sec+"</b>";
if(seconds==0)
{
seconds = 60;
if(minuties == 0)
{
window.clearInterval(timer);
document.addmt.submit();

}
minuties -= 1;
}
}
</script>
<div id="w"><script>timer=setInterval('a()', 1000);</script></div>

   
 
 автор: Trianon   (02.02.2008 в 18:01)   письмо автору
 
   для: Fighter   (02.02.2008 в 17:36)
 

Берите из php линейную абсолютную метку времени планируемого события (mktime()) и передавайте её на клиентскую сторону - в JavaScript.
Все арифметические действия (тики, определение оставшегося интервала и пр.) вычисляйте в линейных единицах (секундах либо миллисекундах). Перед выводом - преобразуйте линейное время в человеческое представление ЧЧ:ММ:СС

   
 
 автор: Fighter   (09.02.2008 в 19:00)   письмо автору
 
   для: Trianon   (02.02.2008 в 18:01)
 

Спасибо все сделал ! :)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования