Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] odliczanie czasu
Forum PHP.pl > Forum > Przedszkole
kertoip
Witam.
Jak zrobić odliczanie w javascript lub ajax, jesli odliczanie dojdzie do 0 to wykonuje sie automatycznie zapytanie do bazy w php ?
Johnas
odświeżam
yevaud
w temacie masz [php], a pytasz o js

generalnie poczytaj o setInterval setTimeout
[JAVASCRIPT] pobierz, plaintext
  1. <script type="text/javascript">
  2. function wykonajcostam()
  3. {
  4. $.post('/jakisadres'); // funkcja jquery do wysylania POST ajax
  5. }
  6.  
  7. setInterval(wykonajcostam, 5000); // wyslij post co 5 sekund
  8. </script>
[JAVASCRIPT] pobierz, plaintext

nie wiem czy to dziala, wklepalem z palca, ale powinno
Johnas
W sumie to ci powiem że nie ja zakładałem ten temat. Odpowiedź na moje wymagania też nie będzie prosta ponieważ chcę napisać własny silnik gry VIA. I chodzi mi o ten zegar co pokazywał by ile zostało jeszcze do końca danego zadania. Bo zegar za każdym razem będzie się zerował po odświeżaniu jak dodam wartość do sql na wykonanie zadania. Czy da się coś zrobić aby zaradzić zerowaniu zegara?
yevaud
nie wiem co to gra VIA smile.gif
nie rozumiem jaki zegar sie zeruje

jesli chodzi Ci o to zeby po odswiezeniu strony timer zaczynal od momentu gdzie skonczyl, a nie od poczatku, to powinienes np. co sekunde zapisywac w np. cookie od jakiej wartosci powinien zaczac po odswiezeniu. Wtedy jesli user przeladuje strone, mozesz sprawdzic czy cos jest w cookie i jesli tak, to zaczac od zapisanego miejsca
Johnas
czytałem coś o tym ale nie wiem jak dodawać wartości do cookie oraz odbierać... Jestem początkującym w tych tematach chodź powiem że już się trochę nauczyłem na tym forum.
Jeśli chodzi o cookie to widziałem pomysł taki aby godzina zaczęcia była wysłana do cookie i godzina zakończenia i potem jakoś sprawdzić wartość ile czasu i funkcja dalej by odliczała. Tyle że z cook`ów nic nie umiem. (drugi minus jest taki że tak da się oszukiwać w grze z tego co czytałem)

Nie wiem czy nie da się zrobić czegoś na mysql z funkcją NOW() [na razie ten zegar tylko mnie blokuje sad.gif ]

EDIT

Gra Via WWW- Jest to gra tekstowa (na stronie) coś jak Ogame. Ogame jest na silniku xNova (ja piszę własny)
yevaud
Jesli chodzi o gry VIA
http://www.merriam-webster.com/dictionary/via

Jesli chodzi o cookie w js
http://lmgtfy.com/?q=javascript+cookie

Nie gralem w Ogame
Oszukiwac bedzie mozna poniewaz cookie mozna modyfikowac po stronie klienta, zeby to uniemozliwic zapisuj czas rozpoczecia "akcji" po stronie serwera i sprawdzaj czy ktos Cie nie oklamuje smile.gif Mozesz do tego uzyc mysql i "NOW" albo po prostu uzyc do tego php i trzymac dodatkowe dane w sesji(w sumie tez cookie.. ale troche inaczej wykorzystane). Generalnie zeby uniemozliwic oszukiwanie musisz najpierw sie zorientowac na czym dokladnie ono polega/mialoby polegac i dobrac wygodna dla siebie metode zabezpieczenia przez tym:)
zegarek84
w javascript licznik/zegar może być tylko informacyjny i nic więcej exclamation.gif i wartości nie zapisuj w cookies [jedynie mało znaczące] - ważne rzeczy zapisuj na serwerze w zmiennych sesyjnych [coś więcej to odpowiednie tabele i baza danych - ale i tak po stronie sesji]... w cookies możesz trzymać identyfikator sesji [passkey] - jak ktoś go zmodyfikuje to zostanie wylogowany [w sesji zapisz sobie jeszcze useragenta i ip i sprawdzaj, czy ten passkej się zgadza - passkey w sesji masz generowany automatycznie - chyba, że napiszesz własny mechanizm sesji]...

więc co do licznika jako informacyjnego może on coś odliczać i pokazywać na stronie po czym przekierować/odświeżyć stronę - ale to jaka strona się pojawi powinna zależeć jedynie od zapisanych danych konta [takie przekierowanie/odświerzenie nie może być akcją uzyszkodnika]... czyli w bazie masz np. zapamiętaną ostatnią akcję, gdzieś masz zapisane limity, że nie częściej niż ileś tam można coś zrobić, w bazie masz pole z czasem ostatniej takiej akcji z danej grupy - jeśli czas ostatniej akcji + limit czasowy następnej akcji > od aktualnego czasu to akcję wykonujesz [inaczej nic nie robisz gdyż nie zgodne]... to tylko taka logika - w js łatwo przekierować/odświeżyć stronę po określonym czasie - odliczań na forum tez było duuużo... ale mechanizmu gry nie uzależniaj od danych zawartych po stronie uzyszkodnika
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.