Webboard

Pełna wersja: Tekst o określonej godzinie
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Potrzebuje wyświetlić kilka kroków na stronie głównej forum o określonej godzinie .

Coś zacząłem kombinować kod poniżej . Korzystam z http://mybbhacks.zingaburga.com/showthread.php?tid=260 ale niestety kod po dodaniu do szablonu index nie działa. 

Kod:
<?php
   
   $godzina_rozpoczecia    = 9;    
   $minuta_rozpoczecia    = 00;
   $sekunda_rozpoczecia    = 00;
   
   $data_wyswietlenia    = mktime($godzina_rozpoczecia, $minuta_rozpoczecia, $sekunda_rozpoczecia,
                         intval(date('m')), intval(date('d')), intval(date('y')));
   
   $roznica = date('U')-$data_wyswietlenia;
   
   if ($roznica > 0)
   {
   ?>
   
   <p>O TEJ GODZINIE KROK 1 POWINIEN BYĆ JUŻ ZREALIZOWANY</p>
   
   <?php
   }
   ?>

<?php
   
   $godzina_rozpoczecia    = 10;    
   $minuta_rozpoczecia    = 01;
   $sekunda_rozpoczecia    = 00;
   
   $data_wyswietlenia    = mktime($godzina_rozpoczecia, $minuta_rozpoczecia, $sekunda_rozpoczecia,
                         intval(date('m')), intval(date('d')), intval(date('y')));
   
   $roznica = date('U')-$data_wyswietlenia;
   
   if ($roznica > 0)
   {
   ?>
   
   <p>O TEJ GODZINIE KROK 2 POWINIEN BYĆ JUŻ ZREALIZOWANY</p>
   
   <?php
   }
   ?>
Takie rzeczy się cronem robi ;)

Chyba, że chodziło - tak jak w temacie - tylko wyświetlenie tekstu:
Kod:
<?php

$now = time();
$firstStep = strtotime('today');
// $secondStep = strtotime('08:00:00 ' . date('d-m-Y'));
$secondStep = $firstStep + 28800;
// $thirdStep = strtotime('16:00:00 ' . date('d-m-Y'));
$thirdStep = $secondStep + 28800;

if ($now >= $firstStep && $now < $secondStep) {
    echo 'First text';
}

if ($now >= $secondStep && $now < $thirdStep) {
    echo 'Second text';
}

if ($now >= $thirdStep) {
    echo 'Third text';
}
Potrzebuje osiągnąć następujący efekt .
Co określoną godzinę na głównej forum muszę w wyświetlić określony tekst .
Powiedzmy że tekst wyświetlany to 15 kroków wyświetlanych o ustalonych godzinach.
KROK 1 - Godzina 9
KROK 2 Godzina 10
KROK 3  Godzina 11.30
KROK 4 Godzina 12
itd
No to sposobów jest kilka. Wszystko zależy od tego jakiej optymalizacji potrzebujesz.
cache serwerowy, cron + zapis do pliku, baza + dynamiczny odczyt albo tak jak wyżej - na szybko i na pałę :D ...
Pamiętaj, że w operacjach na czasie wszędzie lepiej używać >= i <= zamiast ostrych znaków nierówności i znaku równości. Ja miałem takie problemy właśnie przez użycie =, skrypt nie nadążał wyłapać odpowiedniej godziny i nic się nie działo.