|
|
|
|
|
для: sl1p
(14.12.2008 в 16:45)
| | Теперь по этому поводу я спокоен. СПАСИБО!!! | |
|
|
|
|
|
|
|
для: Dmitry_RM
(14.12.2008 в 16:13)
| | будет везде время сервера, тоесть одно и тоже. | |
|
|
|
|
|
|
|
для: Dmitry_RM
(09.12.2008 в 07:06)
| | Вот теперь меня интересует: Также ли будет отображаться время и сколько до него осталось в других часовых поясах?
Я имею ввиду сдвиг по Гринвичу или как там это еще называется. | |
|
|
|
|
|
|
|
для: Николай2357
(14.12.2008 в 00:56)
| |
<?php
$timenow = strtotime('now');
$start = '20081214 1700';
$timestamp = strtotime($start);
$start_time=strtotime($start) - $timenow;
|
Я тут подкорректировал $timestamp на $timenow, а то ошибка была.
if((s-1) > 0)
{
document.getElementById('start_time').innerHTML = 'дней: '+ d+' часов: '+h+' минут: '+ii+i+' секунд: '+ss+s;
setTimeout('startCountdown()',1000);
}
|
И тут поменял 10 на 1000, чтоб нормально шло.
А вообще ОГРОМНОЕ СПАСИБО!!! очень помог. | |
|
|
|
|
|
|
|
для: Николай2357
(13.12.2008 в 11:04)
| | Вот у меня появилась минутка и хорошее настроение )))))
Я собрал в кучу всё, что было в этой теме. Смотрите, анализируйте, оптимизируйте, ищите ошибки и вперед. Это Вам, чтоб принцип понять.
<?php
$timestamp = strtotime('now');
$start = '20081214 1700';
$timestamp = strtotime($start);
$start_time=strtotime($start) - strtotime($now);
header("Refresh: $start_time; url=test.php");
$day=floor($start_time/86400);
$hours=floor(($start_time/3600)-$day*24);
$min=floor(($start_time-$hours*3600-$day*86400)/60);
$sec=$start_time-($min*60+$hours*3600+$day*86400);
?>
<html>
<head>
<SCRIPT LANGUAGE='JavaScript'>
var d = <?php echo $day ?>;
var h = <?php echo $hours ?>;
var i = <?php echo $min ?>;
var s = <?php echo $sec ?>;
function startCountdown()
{
s--;
d=(d<0)?0:d;
h=(h<0)?0:h;
i=(i<0)?0:i;
var ii=(i >= 10)?"":"0";
var ss=(s >= 10)?"":"0";
if((s-1) > 0)
{
document.getElementById('start_time').innerHTML = 'дней: '+ d+' часов: '+h+' минут: '+ii+i+' секунд: '+ss+s;
setTimeout('startCountdown()',10);
}
else
{
i--;
s = 60;
startCountdown()
}
if(i==0&&h!=0)
{
h--;
i=59;
}
if(h==0&&d!=0)
{
d--;
h=23;
}
}
</script>
</head>
<body onload="startCountdown()">
Викторина начнется -
<?php echo date('d F Y h:i:s A', $timestamp);?>
<br>
До начала викторины осталось <br />
<div id="start_time"></div></body>
|
| |
|
|
|
|
|
|
|
для: Dmitry_RM
(13.12.2008 в 08:11)
| | Ну а сами разложить логически то, что собрали из кусков, не пытались? Ведь очевидно, что вот этот кусок
<?
$day=floor($start_time/86400);
$hours=floor(($start_time/3600)-$day*24);
$min=floor(($start_time-$hours*3600-$day*86400)/60);
$sec=$start_time-($min*60+$hours*3600+$day*86400);
|
можно отформатировать так же, как и верхний, с помощью функции date();
А как сделать рефрешь, Вам писали выше. Полное ощущение, что Вы совсем не вникаете не только в то, что Вам советуют, но и в то, что пишете сами. И обратный отсчёт уже Вам не нужен стал, как я понял... | |
|
|
|
|
|
|
|
для: Dmitry_RM
(09.12.2008 в 07:06)
| | У меня вот так получилось:
$now = 'now';
$timestamp = strtotime($now);
echo "Cейчас - " . date('d F Y h:i:s A', $timestamp);
print ('<br>');
$start = '20081214 1700';
$timestamp = strtotime($start);
echo " Викторина начнется - " . date('d F Y h:i:s A', $timestamp);
print ('<br>');
$start_time=strtotime($start) - strtotime($now);
$day=floor($start_time/86400);
$hours=floor(($start_time/3600)-$day*24);
$min=floor(($start_time-$hours*3600-$day*86400)/60);
$sec=$start_time-($min*60+$hours*3600+$day*86400);
print ('<br>');
echo " До начала викторины осталось: $day : $hours : $min : $sec";
?>
|
Работает вроде правильно: считает и показывает сколько осталось до начала.
Только надо рабобраться с рефрешем.
Что скажете? | |
|
|
|
|
|
|
|
для: Trianon
(12.12.2008 в 21:46)
| | См. ниже. | |
|
|
|
|
|
|
|
для: Dmitry_RM
(12.12.2008 в 20:40)
| | вот если из одного вычесть другое - будет как раз интервал в секундах.
важнее то, что strtotime может преобразовать представление не только на английском языке, но и представление, в котором выдает дату-время сервер MySQL . | |
|
|
|
|
|
|
|
для: Trianon
(12.12.2008 в 20:28)
| | time - Возвращает текущую метку времени
strtotime - Преобразует текстовое представление даты на английском языке в метку времени Unix
Ну хоть пример какой-нибудь напишите. То что у меня получается даже показывать не хочется. | |
|
|
|
|