Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Nicki zalogowanych
Lirdoner
post
Post #1





Grupa: Zarejestrowani
Postów: 500
Pomógł: 1
Dołączył: 29.09.2009

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


Witam, jak mogę wyświetlić nicki zalogowanych użytkowników, każdy user ma nick zapisany w $_SESSION['login']
Proszę mi podać tylko technikę, skrypt sam napiszę
Go to the top of the page
+Quote Post
Spawnm
post
Post #2





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




zrób tabelę z info o zalogowanych , np
czas, sid, nick
wyświetlasz tych co coś robili w ostatnich minutach , resztę usuwasz z bazy.
Go to the top of the page
+Quote Post
Pilsener
post
Post #3





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Poczytaj o mechanizmach obsługi sesji, najlepiej napisz własny, taki, który daje Tobie odpowiednie możliwości i zapewnia odpowiedni poziom bezpieczeństwa:
http://artykuly.zyxist.com/czytaj.php/wlasny_mechanizm_sesji
Go to the top of the page
+Quote Post
Czahoo
post
Post #4





Grupa: Zarejestrowani
Postów: 12
Pomógł: 2
Dołączył: 16.12.2009

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


W tabeli użytkowników dodajesz kolumnę aktywność, w której przy każdym odświeżeniu strony wstawiasz wynik funkcji time().

Później aby sprawdzić czy dany użytkownik jest online, piszesz sobie taką funkcję:
  1. function online($id) //$id oznacza id użytkownika
  2. {
  3. $czas_aktywny=60; //tutaj wpisujesz odpowiedni czas w sekundach po którym uznajesz że dany użytkownik jest nieaktywny
  4. $sql=mysql_query("SELECT aktywnosc FROM tabela_uzytkownikow WHERE id='$id'");
  5. return $r['aktywnosc']+$czas_aktywny>=time()?true:false;
  6. }

Ta funkcja zwróci true jeżeli użytkownik jest aktywny i false jeśli nie.


--------------------
Czahoo - Gra MMORPG online
Go to the top of the page
+Quote Post
phpion
post
Post #5





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




@Czachoo:
Nie lepiej przenieść warunek do SQLa? Mając np. 1000 użytkowników, z których faktycznie aktywnych jest 10 pobierasz i sprawdzasz wszystkie 1000 użytkowników. Przenosząc warunek z PHP do SQL pobierasz tylko 10 rekordów i od razu wiesz, że pobrałeś tylko aktywnych.
Go to the top of the page
+Quote Post
Czahoo
post
Post #6





Grupa: Zarejestrowani
Postów: 12
Pomógł: 2
Dołączył: 16.12.2009

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


Jeżeli potrzebujesz zwrócić wszystkich zalogowanych użytkowników to fakt, wygodniejsze jest następujące zapytanie:
  1. $czas_aktywny=60;
  2. $sql=mysql_query("SELECT login FROM tabela_uzytkownikow WHERE aktywnosc+$czas_aktywny>=".time());


Ten post edytował Czahoo 16.12.2009, 12:29:50


--------------------
Czahoo - Gra MMORPG online
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 Aktualny czas: 20.08.2025 - 06:57