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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Онлайн викторина - сложно, но можно

Сообщения:  [1-10]    [11-20]   [21-30]  [31-39] 

 
 автор: Dmitry_RM   (14.12.2008 в 16:55)   письмо автору
 
   для: sl1p   (14.12.2008 в 16:45)
 

Теперь по этому поводу я спокоен. СПАСИБО!!!

  Ответить  
 
 автор: sl1p   (14.12.2008 в 16:45)   письмо автору
 
   для: Dmitry_RM   (14.12.2008 в 16:13)
 

будет везде время сервера, тоесть одно и тоже.

  Ответить  
 
 автор: Dmitry_RM   (14.12.2008 в 16:13)   письмо автору
 
   для: Dmitry_RM   (09.12.2008 в 07:06)
 

Вот теперь меня интересует: Также ли будет отображаться время и сколько до него осталось в других часовых поясах?
Я имею ввиду сдвиг по Гринвичу или как там это еще называется.

  Ответить  
 
 автор: Dmitry_RM   (14.12.2008 в 16:09)   письмо автору
 
   для: Николай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   (14.12.2008 в 00:56)   письмо автору
 
   для: Николай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>

  Ответить  
 
 автор: Николай2357   (13.12.2008 в 11:04)   письмо автору
 
   для: 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   (13.12.2008 в 08:11)   письмо автору
 
   для: 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"; 

?>

Работает вроде правильно: считает и показывает сколько осталось до начала.
Только надо рабобраться с рефрешем.
Что скажете?

  Ответить  
 
 автор: Dmitry_RM   (13.12.2008 в 08:08)   письмо автору
 
   для: Trianon   (12.12.2008 в 21:46)
 

См. ниже.

  Ответить  
 
 автор: Trianon   (12.12.2008 в 21:46)   письмо автору
 
   для: Dmitry_RM   (12.12.2008 в 20:40)
 

вот если из одного вычесть другое - будет как раз интервал в секундах.


важнее то, что strtotime может преобразовать представление не только на английском языке, но и представление, в котором выдает дату-время сервер MySQL .

  Ответить  
 
 автор: Dmitry_RM   (12.12.2008 в 20:40)   письмо автору
 
   для: Trianon   (12.12.2008 в 20:28)
 

time - Возвращает текущую метку времени
strtotime - Преобразует текстовое представление даты на английском языке в метку времени Unix

Ну хоть пример какой-нибудь напишите. То что у меня получается даже показывать не хочется.

  Ответить  

Сообщения:  [1-10]    [11-20]   [21-30]  [31-39] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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