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

question-closed Przerwa czasowa

Object Storage Arubacloud
0 głosów
530 wizyt
pytanie zadane 10 września 2019 w PHP przez c00l h34d Użytkownik (570 p.)
zamknięte 10 września 2019 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 2019 przez c00l h34d Użytkownik (570 p.)
przeniesione 10 września 2019 przez HaKIM
Udało mi się z tym uporać bez żadnej pomocy XD
2
komentarz 10 września 2019 przez Velta Maniak (52,010 p.)
Jeżeli o tym informujesz, najlepiej by też było, gdybyś podał owe rozwiązanie.
komentarz 12 września 2019 przez c00l h34d Użytkownik (570 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 2019 przez c00l h34d Użytkownik (570 p.)
Kod posiada jeszcze parę błędów i potrafi się sam "zepsuć". Wciąż pracuje nad jego pełnym naprawieniem ;)
komentarz 12 września 2019 przez c00l h34d Użytkownik (570 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 174 wizyt
pytanie zadane 8 lutego 2018 w JavaScript przez Yashe Dyskutant (7,720 p.)
0 głosów
1 odpowiedź 119 wizyt
pytanie zadane 18 sierpnia 2020 w JavaScript przez rob Bywalec (2,440 p.)
0 głosów
1 odpowiedź 97 wizyt
pytanie zadane 11 maja 2019 w PHP przez Freezy123 Nowicjusz (120 p.)

92,555 zapytań

141,402 odpowiedzi

319,543 komentarzy

61,939 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...