![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 4.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam tworzę grę przeglądarkową i nie wiem jak sprawdzić czy użytkownik był wczoraj zalogowany i wykonał odpowiednią akcję.
Chodzi mi o to, że robie zdobywanie doswiadczenia poprzez powiedzmy, że kursy, które trwają kilka dni i ich zdanie/ocena końcowa jest uzależniona od frekfencji. Nie chcę robić tego w cron i wysyłać codziennie sprawdzenie typu " if gracz obecnie robi kurs && byl dzis i kliknął idz na zajęcia (że obecnie jest na zajęciach) " i wtedy by dodawalo mu ze ma dzien zaliczony... Chcę jakos przechowac datę w bazie tak aby gracz po kliknięciu idz na zajęcia mial sprawdzany odstęp od ostatniego bycia w szkole i jesli rożnica jest większa niz 24h to zeby mu dawalo 1 nieobecność. Moje pytanie: Jak w bazie zapisać datę/czas, tak aby moc sprawdzić to czy był ostatnio na zajęciach wtedy co powinien? Trochę pokręciłem ale mam nadzieję, że dobrze wytłumaczyłem |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Jeśli dobrze rozumiem, to najprostszym rozwiązaniem jest trzymanie w bazie daty 'ostatniej obecności na zajęciach'. I dalej przecież nie ma najmniejszego problemu, by porównać datę z bazy z obecną, odjąć jedno od drugiego i sprawdzić czy jest większe od 24h.
Załóżmy, że ktoś klika 'idź na zajęcia'. Więc teraz sprawdzasz kiedy był ostatnio.
Jeśli istnieje konieczność, możesz też dodatkowo sprawdzać ile dni nie był na tych 'zajęciach' dzieląc (z zaokrągleniem floor) różnicę przez 24 i dodać odpowiednią liczbę nieobecności. Ten post edytował b4rt3kk 2.12.2012, 18:44:40 -------------------- Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 4.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli dobrze rozumiem, to najprostszym rozwiązaniem jest trzymanie w bazie daty 'ostatniej obecności na zajęciach'. I dalej przecież nie ma najmniejszego problemu, by porównać datę z bazy z obecną, odjąć jedno od drugiego i sprawdzić czy jest większe od 24h. Załóżmy, że ktoś klika 'idź na zajęcia'. Więc teraz sprawdzasz kiedy był ostatnio.
Jeśli istnieje konieczność, możesz też dodatkowo sprawdzać ile dni nie był na tych 'zajęciach' dzieląc (z zaokrągleniem floor) różnicę przez 24 i dodać odpowiednią liczbę nieobecności. tak to rozumiem ale w jakiej formie przechowywać ten czas w bazie aby móc tego typu rozwiązanie zastosować? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Obojętnie jakiej, przecież istnieje funkcja time, date, strtotime, możesz sobie później dowolnie sformatować, tak by dokonać obliczeń.
-------------------- Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 4.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 12:59 |