Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[PHP] Wyświetlanie godziny w komórkach co 30 minut

Leewang 31 Sie 2011 09:34 867 3
  • #1 31 Sie 2011 09:34
    Leewang
    Poziom 15  

    Witam

    Chciałbym zrobić w sumie 24 komórki w których będzie wyświetlona godzina coś takiego:


    8:00-8:30
    8:30-9:00
    9:00-9:30

    itd

    Napisałem kod dla minut jako parzysta nie parzysta komórka ale nie wiem jak poradzić sobie z godzinami.

    Ktoś pomoże?

    Mój kod:
    Na początek

    Code:
    <table>
    


    $powtorzenia = 24;
    $godzina = 1;
    $min = 0;
    $min2 = 3;
     
    while ($powtorzenia>=1)
    {
     
    echo'<tr><td name="g'.$godzina.'">';
     
    if ($powtorzenia % 2 == 0)
    {
     
    echo $hours.':';}
    else {
     
    $hoho = $hours -1;
    echo $hoho.':';}
     
    if ($powtorzenia % 2 == 0) {echo $min.'0-';}
    else {echo $min2.'0-';}
     
    echo $hours.':';
    if ($powtorzenia % 2 != 0) {echo $min.'0';}
    else {echo $min2.'0';}
     
    echo'</td></tr>';
    $powtorzenia --;
    $hours ++;
    $godzina ++;


    </table>


    Generuje on takie wyniki:

    8:00-8:30
    8:30-9:00
    10:00-10:30
    10:30-11:00
    12:00-12:30

    Do drugiego wiersza jest OK, w trzecim chcę żeby była godzina 9 ale już jest 10, bo nie wiem jak sformułować warunek :(

    Może ktoś pomoże ? Jak to rozwiązać?

    0 3
  • Pomocny post
    #2 31 Sie 2011 09:48
    marcinj12
    Poziom 40  

    Ja bym to zrobił prościej (i uwzględnił że przedziały nie powinny się pokrywać):

    Kod: php
    Zaloguj się, aby zobaczyć kod

    0
  • #3 31 Sie 2011 09:50
    dominkaster
    Poziom 14  

    Tak może wyglądać prosty kod wyświetlający przedziały godzin:

    Code:
    <?php
    
    $time = 0;
    while ($time < 86400)
    {
       echo date('H:i', $time)."-".date('H:i', $time+1800)."\n";
       $time=$time+1800;
    }
    ?>

    Powinieneś poradzić sobie z jego modyfikacją

    0
  • #4 31 Sie 2011 09:59
    Leewang
    Poziom 15  

    marcinj12 dzięki, wszystko działa :)

    0