Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Timeleft
masterek2009
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 5.02.2009

Ostrzeżenie: (0%)
-----


Witam

Mam problem chce ustawić timeleft który pokaże użytkownikowi np.że po jakimś czasie zresetuje rzecz 10min 

Proszę o wyruzomiałość dopiero rozpoczynam przygodę z php  (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif)

Cytat
<?php
$Timeleft=date( '00:00:00', time( ) );
$mTimeleft = mktime(1, 0, 0, date("m"), date("d"), date("Y"));



$timestampFromSql = strtotime($Timeleft);
$now = time();
$mnow = mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"));

$verschil = $mnow - $mTimeleft;
$aantal = $verschil / 600;
$aantal = floor($aantal);
$aantalfinal = $aantal * 600;

  $timeleft = date('H:i:s', ((($aantalfinal - $mnow)+600)-43200-3600));

?>
Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




http://forum.php.pl/index.php?showtopic=94...dliczanie+czasu
Go to the top of the page
+Quote Post
masterek2009
post
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 5.02.2009

Ostrzeżenie: (0%)
-----


Czyli jak powinno wyglądać początek

Cytat
<?php
$Timeleft=date( '00:00:00', time( ) );
$mTimeleft = mktime(1, 0, 0, date("m"), date("d"), date("Y"));


z 10 min 
Go to the top of the page
+Quote Post
wookieb
post
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




... W php pokazujesz ile sekund zostało. mktime-time=ilosc sekund ktore przeliczasz na minuty (NIE ZA POMOCA DATE - to służy do CZEGO INNEGO)
W javascript obrabiasz to na stoper (bylo setki razy na forum, poszukaj).

Przy każdym odswiezenie strony sprawdzasz w php czy rzeczywiscie minelo 10 minut.
Go to the top of the page
+Quote Post
masterek2009
post
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 5.02.2009

Ostrzeżenie: (0%)
-----


Nie trzebać używać komendy do crona ? 
Go to the top of the page
+Quote Post
wookieb
post
Post #6





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




A po co?
Go to the top of the page
+Quote Post
masterek2009
post
Post #7





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 5.02.2009

Ostrzeżenie: (0%)
-----


Żeby reset był co 10 min (Żeby cały czas się resetował i pokazywał cały czas co 10 min)

Jeszcze pytanie czyli jeszcze napisać stoper w javascript i pójdzie bezproblemu ?
Go to the top of the page
+Quote Post
wookieb
post
Post #8





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Tutaj już działanie dzieli sie na parę cześci
W tabeli z przedmiotami potrzebne ci jest pole (reset_begin) ktory przechowuje liczbe z funkcji time()

1) Cronem sprawdzasz (najlepiej co 10 sekund czy cos *) w bazie które przedmioty maja reset_begin<=(time()-600) i te resetujesz
2) Użytkownikowi pokazujesz stoper (w javascript który co sekunde zmniejsza liczbe sekund -1) ile czasu mu zostało do zresetowanie. Jezeli dobije do 0 to odświezasz mu cała strone (albo robisz to ajaxem, twoj wybor) i przy tym odswiezeniu sprawdzasz czy przedmiot moze byc zresetowany


* poniewaz nie ma mozliwosci ustawienia crona na co 10 sekund to wtedy robisz co minute i w skrypcie robisz tak
Kod
funkcja_resetujaca();
sleep(10); //10 sekunda
funkcja_resetujaca():
sleep(10); //20 sekunda
funkcja_resetujaca():
sleep(10); //30 sekunda
funkcja_resetujaca():
sleep(10);// 40 sekunda
funkcja_resetujaca():
sleep(10);// 50 sekunda
funkcja_resetujaca():


Ten post edytował wookieb 5.02.2009, 12:33:36
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 17:58