![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 23.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam, potrzebuje informacji/wskazówek jak napisać skrypt który będzie mi co 10 minut powiększał w wszystkich rekordach pewne pole o 1.
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 174 Pomógł: 1 Dołączył: 19.02.2004 Ostrzeżenie: (10%) ![]() ![]() |
Za pomocą bazy MySql nie uruchomisz skryptu co jakiś odstęp czasu, ale możesz napisać skrypt w np. php ktory będzie aktualizował baze.
Poszukaj pod hasłem cron było wiele razy na tym forum. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 23.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
Poczytałem i doszedłem do wniosku że skrypt ten może być uruchamiany jedynie przez administratora servera. Natomiast problemem jest to iż ja administratorem nie jestem, a jedynie urzytkowinkiem. Czy jest inne rozwiązanie ?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 174 Pomógł: 1 Dołączył: 19.02.2004 Ostrzeżenie: (10%) ![]() ![]() |
Hm, mam pomysł na jedno rozwiązanie, ale jest ono gorsze od crona. Rozwiązanie to:
Możesz taki skrypt zaimplementować u siebie na stronie i uruchamiać go jako pierwszy skrypt w aplikacji. Mógłbyś trzymać gdzies w bazie kiedy ostatni raz byl uruchamiany. Obliczyć różnicę minut od ostatniego uruchomienia i zaktualizować bazę. Oczywiście trzeba to dokładnie przemyśleć, ale myślę, że da się zrobić. Oczywiście uważam, że jest to rozwiązanie toporne, ale skoro nie ma innego wyjścia, no chyba, że takiego nie znam. |
|
|
![]()
Post
#5
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Skobi @ 2005-07-23 22:50:50) Możesz taki skrypt zaimplementować u siebie na stronie i uruchamiać go jako pierwszy skrypt w aplikacji. A jeżeli na Jego stronę nikt nie wejdzie przez godzinę (przez godzie się nie wykona) ![]() ![]() Są dwa wyjścia: 1. Dostęp do crona bezpośredni na serwerze "zainteresowanym" i odpalać skrypt wykonujący operacje bazodanowe co 10 min. 2. Dostęp do crona na innym serwerze, który wykona skrypt łączący sie ze skryptem na serwerze A i go wykonującym. Tak czy inaczej potrzebujesz skryptu niezawodnie odpalanego w równych ostępach czasu, co oznacza crona, nieważne gdzie. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 174 Pomógł: 1 Dołączył: 19.02.2004 Ostrzeżenie: (10%) ![]() ![]() |
Cytat mam pomysł na jedno rozwiązanie, ale jest ono gorsze od crona dlatego pisalem, że jest to gorsze rozwiązanie, a co do Cytat A jeżeli na Jego stronę nikt nie wejdzie przez godzinę (przez godzie się nie wykona) ![]() ![]() to piszę żeby zapisywać w bazie kiedy się ostatni raż wykonał. Jeżeli zapis w bazie wskazuje na godzinę: 2005-07-23 23:00, a jest teraz 2005-07-24 00:09 to zwiększa wybrane rekordy o 6. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 3.02.2004 Skąd: Tczew Ostrzeżenie: (0%) ![]() ![]() |
Uważam że rozwiązanie Skobi-ego było by dobre w tym przypadku gdyż brak jest crona - umieszczenie tego kodu zaproponowanego przez Skobiego znajdowało by sie gdzieś przed wyświetleniem tej informacji dla klienta i już klient widziałby zaktualizowany rekord
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 180 Pomógł: 0 Dołączył: 24.12.2003 Ostrzeżenie: (0%) ![]() ![]() |
Zalezy dlaczego chcesz powiekszac regularnie o dana wartosc rekord. Jesli maja to byc dane dla odwiedzajacych witryne, to nawet w przypadku jesli nikt nie wchodzil na strone, to nie ma potrzeby aktualizowac dane (bo i tak Ci sie nie uda bez narzedzi typu CRON). Natomiast gdy wejdzie jakis user mozesz obliczyc ile czasu uplynelo od ostatniej aktualizacji i wykonac tyle powiekszen ile uplynelo czasu/cykli.
-------------------- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 23.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
W takim razie opowiem moją sytuacje: (tylko sie nie śmiejcie że taki lamus jak ja sie bierze za takie rzeczy
![]() Mam zamiar napisać prostą gierke internetową, strategie turową (gracz sobie buduje budynki i wykonuje inne opcje następnie klika na przeliczenie tury i sie zmiany ktorych dokonał aktualizują w bazie ... może ktoś grał w gre typu RedDragon to będzie wiedział o co chodzi) i chciałbym aby co 10 minut była dodawana tura wszystkim graczą. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 10:33 |