Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]licznik online
Salur
post 30.07.2015, 18:32:30
Post #1





Grupa: Zarejestrowani
Postów: 179
Pomógł: 0
Dołączył: 28.12.2014

Ostrzeżenie: (20%)
X----


Witam,

Gdy użytkownik się pomyślnie zaloguje zapisuję w bazie datę, po wylogowaniu znów ja zapisuję tylko w innej komórce, później zliczam ile rekordów jest równych aktualnej dacie i wyswietlam jako osoby online. Problem w tym że user się rzadko wylogowuje, przez co zostaje tylko data zalogowania. Jak mogę zrobić ten licznik inaczej? optymalniej i prościej?

  1. // gdy sie zaloguje
  2. $czas = mysql_query("INSERT INTO log (login, last_activ, ip) VALUES ('$uzytkownik', NOW(), '$ip_user')");

ref

Ten post edytował Salur 30.07.2015, 21:14:57
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Damonsson
post 30.07.2015, 23:37:19
Post #2





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

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


Zapisuj każdą akcję użytkownika z aktualną datą, następnie załóż, że osoba online, to osoba której: ostatnia akcja > data aktualna - 15/10/5 minut. Pomysł kiepski, ale dla samego PHP + MySQL jedyny sensowny.
Go to the top of the page
+Quote Post
Ether
post 31.07.2015, 07:12:28
Post #3





Grupa: Zarejestrowani
Postów: 16
Pomógł: 1
Dołączył: 21.03.2015

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


Takie rzeczy polecam upchać w memcache, ponieważ szkoda tak katować MySQL. Generalnie istnieje jeszcze kilka innych metod, jedną z nich jest parsowanie logów aplikacji serwera www, i wpychanie do listy online (praca na płaskim pliku tekstowym wydaje mi się bardziej "optymalna").
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: 14.08.2025 - 08:56