• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Przerwa czasowa

0 głosów
69 wizyt
pytanie zadane 10 września w PHP, Symfony, Zend przez c00l h34d Nowicjusz (120 p.)
zamknięte 10 września przez c00l h34d

Witam, mam problem otóż, chciałem stworzyć czasową przerwę w możliwości walki na arenie. W bazie danych kolumna ma typ danych DATETIME. Jednak nie mogę sobie z tym poradzić, mam nadzieję że będziecie w stanie mi pomóc.

Chce by po osiągnięciu progu ($_SESSION['arenaf']) do bazy danych była wpisywana data i czas, który jest w danej chwili + 2 godziny. Potem by strona porównywała sobie czas który jest teraz z tym który jest wpisany w bazie i wyświetlała różnice we wskazanym miejscu.

Czy coś tu jest zrobione źle, a może macie jakieś sposoby/wskazówki jak sobie poradzić z tym problemem?

Za wszelką pomoc dziękuje :D

<?php
$id=$_SESSION['id'];
$rez = @$polacz->query(
        sprintf("SELECT * FROM uzytkownicy WHERE id = '%s'",
        mysqli_real_escape_string($polacz, $id)));
        $hm = $rez->num_rows;
            if($hm>0)
            {
                
                
                $wiersz = $rez->fetch_assoc();
                    $_SESSION['arenatime']=$wiersz['Arena'];
            }
            
            echo $_SESSION['arenatime'];
$date2 = date('Y-m-d H:i:s');
    $koniec = DateTime::createFromFormat('Y-m-d H:i:s', $_SESSION['arenatime']);
    $roznica = $date2->diff($koniec);
    $date1 = date('Y-m-d H:i',strtotime('+2 hour',strtotime($date2)));
if($_SESSION['arenaf']>10)
{
    $polacz->query("UPDATE uzytkownicy SET Arena = DATE_ADD('$date1', INTERVAL 2 HOUR) WHERE id = '$id'");
        echo '<div class="tile2"><img src="arcanium/barbuteoff.png" width="96px"></img><br />Tutaj ma być wyświetlany pozostały czas</div>';
        $polacz->close();
}
else 
{
    echo '<a href="arena"><div class="tile2"><img src="arcanium/barbute.png" width="96px"></img><br />Arena</div></a>';
}
?>

 

komentarz zamknięcia: Rozwiązane
komentarz 10 września przez c00l h34d Nowicjusz (120 p.)
przeniesione 10 września przez HaKIM
Udało mi się z tym uporać bez żadnej pomocy XD
2
komentarz 10 września przez Velta Pasjonat (20,870 p.)
Jeżeli o tym informujesz, najlepiej by też było, gdybyś podał owe rozwiązanie.
komentarz 12 września przez c00l h34d Nowicjusz (120 p.)

Proszę bardzo :)

<?php
$id=$_SESSION['id'];
$rez = @$polacz->query(
        sprintf("SELECT * FROM uzytkownicy WHERE id = '%s'",
        mysqli_real_escape_string($polacz, $id)));
        $hm = $rez->num_rows;
            if($hm>0)
            {
                
                
                $wiersz = $rez->fetch_assoc();
                    $_SESSION['arenatime']=$wiersz['Arena'];
            }
            $arenatime12=$_SESSION['arenatime'];
$date2 = date('Y-m-d H:i:s');
    $date1 = date('Y-m-d H:i:s',strtotime('+2 hour',strtotime($date2)));
    $date3 = strtotime("$arenatime12");
    $date4 = time();
    $date5 = $date3 - $date4;
    $data6 = intval($date5%60);
    $data7 = intval($date5 / (60) %60);
    $data8 = floor($date5 / (60*60));
    $date6 = sprintf("%02d", $data6);
    $date7 = sprintf("%02d", $data7);
    $date8 = sprintf("%02d", $data8);
    if($date5==0)
    {
        $_SESSION['arenaf']=0;
        $_SESSION['atd']=0;
    }
    if($_SESSION['atd']!=1)
    {
if(($_SESSION['arenaf']>14))
{
    $polacz->query("UPDATE uzytkownicy SET Arena = DATE_ADD('$date2', INTERVAL 2 HOUR) WHERE id = '$id'");
        echo '<div class="tile2"><img src="arcanium/barbuteoff.png" width="96px"></img><br />'.$date8.':'.$date7.':'.$date6.'</div>';
        $polacz->close();
        $_SESSION['atd']=1;
}
else 
{
    echo '<a href="arena"><div class="tile2"><img src="arcanium/barbute.png" width="96px"></img><br />Arena</div></a>';
}
    }
    else
    {
    if(($_SESSION['arenaf']>14))
{
        echo '<div class="tile2"><img src="arcanium/barbuteoff.png" width="96px"></img><br />'.$date8.':'.$date7.':'.$date6.'</div>';
}
else 
{
    echo '<a href="arena"><div class="tile2"><img src="arcanium/barbute.png" width="96px"></img><br />Arena</div></a>';
}    
    }
?>

 

komentarz 12 września przez c00l h34d Nowicjusz (120 p.)
Kod posiada jeszcze parę błędów i potrafi się sam "zepsuć". Wciąż pracuje nad jego pełnym naprawieniem ;)
komentarz 12 września przez c00l h34d Nowicjusz (120 p.)
Ze względu na liczne błędy rozbiłem kod na 2 powiązane ze sobą pliki, testuje jeszcze czy wszystko chodzi tak jak powinno. Może wam się uda to ogarnąć w 1 pliku ;)

Podobne pytania

0 głosów
0 odpowiedzi 74 wizyt
pytanie zadane 8 lutego 2018 w JavaScript, jQuery, AJAX przez Yashe Dyskutant (7,670 p.)
0 głosów
1 odpowiedź 38 wizyt
0 głosów
1 odpowiedź 191 wizyt
Porady nie od parady
Nie wiesz jak poprawnie zredagować pytanie lub pragniesz poznać którąś z funkcji forum? Odwiedź podstronę Pomoc (FAQ) dostępną w menu pod ikoną apteczki.FAQ

66,495 zapytań

113,266 odpowiedzi

239,870 komentarzy

46,634 pasjonatów

Przeglądających: 266
Pasjonatów: 7 Gości: 259

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...