Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Online/Offline - Status usera
Kerth
post 16.07.2013, 14:11:23
Post #1





Grupa: Zarejestrowani
Postów: 250
Pomógł: 1
Dołączył: 6.08.2012

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


Cześć,
robię właśnie statusy graczy zalogowanych i nie zalogowanych. Tylko nie wiem czy wybrałem sobie bezpieczny sposób. Chodzi o to, żeby dane o tym czy gracz jest zalogowany czy nie były przechowywane w bazie. Konkretniej chodzi o to, że gdy gracz się loguje(w tym samym warunku) wykonuje się zapytanie dodające do kolumny `online_offline` w bazie napis 'Online' a gdy się wylogowywuje to ustawia na 'Offline'. Wtedy w statystykach pobieram z kolumny 'online_offline' status i sprawdzam czy jest gracz zalogowany czy nie. Jakby co to logowanie mam na sesjach.
Nie wiem czy to dobry pomysł. Może ktoś ocenić lub ewentualnie podać algorytm jak miało by coś takiego wyglądać, bo ja to tak widzę.

Ten post edytował Kerth 16.07.2013, 14:12:28
Go to the top of the page
+Quote Post
gothye
post 16.07.2013, 14:36:42
Post #2





Grupa: Zarejestrowani
Postów: 702
Pomógł: 65
Dołączył: 16.03.2009

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


stwórz kolumnę w SQL np online INT(11) unsigned i zapisuj w niej czas , ptem tylko pobierasz status online/offline z bazy wraz z warunkiem na wyszukiwanie po kolumnie online


--------------------
Nie udzielam pomocy poprzez PW
Go to the top of the page
+Quote Post
b4rt3kk
post 16.07.2013, 14:47:52
Post #3





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Nie każdy opuszczając stronę się wylogowuje, więc na podstawie Twojego skryptu będzie pozostawał wiecznie online. Możesz zapisywać w odpowiedniej kolumnie czas ostatniej akcji użytkownika (każde przeładowanie strony itp.). Przy sprawdzaniu ile osób jest online zliczasz liczbę rekordów, w których (obecny_czas - 10 min) < czas_ostataniej_akcji_uzytkownika. 10 min jest tu oczywiście tak przykładowo - jako ten czas możesz ustalić np. żywotność sesji, wtedy wiesz na pewno, że jeśli przez ten czas nie wykonał żadnej akcji to znaczy, że sesja wygasła, tak więc by być online musi zalogować się ponownie.


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
Kerth
post 16.07.2013, 14:50:54
Post #4





Grupa: Zarejestrowani
Postów: 250
Pomógł: 1
Dołączył: 6.08.2012

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


Cytat
Nie każdy opuszczając stronę się wylogowuje, więc na podstawie Twojego skryptu będzie pozostawał wiecznie online.


Nie koniecznie, ponieważ to zapytanie wykonuje się w pliku logout.php czyli w momencie wylogowania się gracza. No chyba, że się mylę i to nie będzie działać.
Go to the top of the page
+Quote Post
buliq
post 16.07.2013, 14:55:49
Post #5





Grupa: Zarejestrowani
Postów: 559
Pomógł: 93
Dołączył: 4.03.2008
Skąd: Olsztyn

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


Przeczytaj jeszcze raz


--------------------
KTOŚ TU PACZY???

Kompedium wiedzy
Go to the top of the page
+Quote Post
Kerth
post 16.07.2013, 15:15:53
Post #6





Grupa: Zarejestrowani
Postów: 250
Pomógł: 1
Dołączył: 6.08.2012

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


A to może w takim razie coś jak jest np. na stronie plemiona.pl?
Tak w trakcie zalogowania jak ktoś wyłączy kartę lub przejdzie w niej na inną stronę to musi się od nowa logować. Wiecie może jak takie coś zrobić, żeby przerwać sesję jak gracz opuści stronę?
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 03:32