Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 0 Dołączył: 12.12.2006 Skąd: Pszów Ostrzeżenie: (0%)
|
Witam
Potrzebuje w skrypcie użyć funkcje która będzie odpalana w czasie. Na zasadzie że włączamy coś i trwa to np 10 min, licznik odlicza do 00:00 i odpala się skrypt. Z tym że ważna sprawa, te licznik ma być niezależny od użytkownika który go uruchomił. Czyli jak taki user zamknie okno przeglądarki, to ten skrypt się wykona. Zasada podobna jak w grach przez przeglądarkę. Macie pomysły? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D |
Zajedziesz bazę chłopie (IMG:style_emoticons/default/smile.gif) Na temat o jakim piszesz były już tutaj tematy. To się rozwiązuje nieco inaczej. Robisz tabelę z eventami czy jak to chcesz nazwać i ustawiasz nowym akcjom znaczniki czasowe zakończenia akcji. Zwykłe timestamp. User widzi te związane z jego id. Po stronie usera JavaScript odbiera te znaczniki i tworzy z nich timer odliczający. Gdy czas dobiegnie do 0 następuje odświeżenie lub nie dzieje się nic poza napisem Wykonano/Koniec. Dopiero gdy strona zostanie odświeżona wszystko się wykona na serwerze. Dzięki temu nie katujesz bazy niepotrzebnie i nie musisz dbać o idealny harmonogram. Skrypt wykona dopiero wtedy, gdy musi. A jak są walki robione skoro userów jest dwóch? Ano skrypt wykonuje się tylko raz, gdy tylko stronę odświeży pierwszy z nich. Gdy klika drugi to raport i cała akcja już jest w bazie. Tak więc przydaje się w takich sytuacjach znacznik dodatkowy dla danego timestamp który synchronizuje info o tym, czy raport już jest, nie ma go, czy właśnie jest tworzony przez jednego z graczy.
Apropo eventów... Można w mysql 5.x korzystać z mechanizmu eventów jednorazowych zamiast CRONa, ale moim zdaniem dla tego typu zagadnienia to przerost formy nad treścią (IMG:style_emoticons/default/smile.gif) |
|
|
|
Avatarus Uruchamianie w czasie 28.07.2010, 20:11:52
everth Eeeee
EDIT: @Quantum: Rzeczywiście, kłania mi się... 28.07.2010, 20:19:01
vokiel Np zrobić tabelę harmonogramu, potem cronem pobier... 28.07.2010, 20:20:41
Quantum @everth oj chyba nie
while + ignore_user_abort ? 28.07.2010, 20:23:25
Avatarus a czy dobrym rozwiązaniem była by tabela z akcjami... 28.07.2010, 20:49:04
zelu Cron'a nie odpalisz czesciej niz co minute 28.07.2010, 21:27:10
Avatarus czyli tabela z eventami,
jak js doliczy do 0 to po... 29.07.2010, 13:03:43 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 12:03 |