Możemy dowiedzieć się, którzy są online lub zalogować się do systemu. To również wyświetlane jako aktywnych członków już w stopce każdej strony lub w dowolnym systemie logowania. To jest zintegrowana w dowolnej logowania systemu dowolnym miejscu. Postaramy się dowiedzieć, jak taki system działa i wyświetla nazwy (lub użytkownika IDS) członków działających na miejscu. Jest częścią każdego systemu, w którym członkowie zalogować z ich identyfikatorem użytkownika i hasło.
Jak można zrozumieć szczegóły sesji członkowskich po zalogowaniu są przechowywane po stronie serwera, a nie po stronie klienta. Więc coraz szczegóły z serwera nie jest możliwe, ponieważ skrypty nie będą mieć dostępu do konta roota. Więc postaramy się utrzymać jeszcze jeden równoległy system wiedzieć, kto jest zalogowany Oto kilka kroków, mamy zrobione wyłącznie dla tego i uczmy się poszczególne etapy tego skryptu.
Przechowywanie informacji logowania w tabeli
Za każdym razem, członek powodzeniem Loges w my będzie przechowywać dane przez dodanie rekordu do naszego stolika wyłącznie stworzonej do tego celu. Nazywamy tę tabelę jako plus_login. Ma pięć pól przechowywania identyfikatora sesji wewnątrz id Nazwa pola usrid przechowywania ID użytkownika zalogowanego w państwach, adres IP systemu, z którego członek zalogowaniu czasie logowania nazwy pola i tm statusu, które zostaną ustawione na OFF kiedyś członek wylogowany, a my ustawić na ON domyślnie. Więc kiedyś członkiem zalogowany my będzie przechowywać wszystkie te informacje przez wstawienie rekordu, gdzie status domyślnie zostaje ustawiona na ON. Struktura tabeli (zrzut SQL) jest dostępna wewnątrz pliku zip do pobrania na końcu tego przewodnika.
Aktualizacja statusu członka
Posiadamy status przechowywane w naszej plus_login tabeli, gdzie mamy ustawić stan ON. Wraz ze statusem jesteśmy również przechowywanie czasu zalogowany Teraz musimy uaktualnić ten stan ON i aktualizacji nowy czas (pole nazwa tm) przy każdym członkiem otwiera wewnątrz obszaru członkowskiego. Zachowaliśmy kod do aktualizacji plus_table z nowym czasu i statusu na on wewnątrz bottom.php strony. To bottom.php strona jest nazywany przez wszystkich stronach na końcu. To bottom.php strona ma trzy zadania. Po pierwsze, aktualizować status zalogowanego użytkownika z nowego czasu i ustawić statusu na on. Oto kod tego pierwszego kroku.
$ Tm = date ("Ymd H: i: s");
$ Q = mysql_query ("update stan zestaw plus_login =" ON ", tm = '$ tm' gdzie 'sesji $ [id]' id =");
Po drugie to oznaczać stan na OFF dla wszystkich członków, którzy nie współdziałały ze strony w ciągu ostatnich 10 minut. (To jest powód, będziemy co według stanu na i nowy czas dla każdego wywołania strony członka). Oto kod wewnątrz bottom.php dla tego kroku.
$ Luka = 10; / / Gap wartość może być zmieniona, to w ciągu kilku minut.
/ / Niech nam dowiedzieć się o czasie przed upływem 10 minut od chwili obecnej. / /
$ Tm = date ("Ymd H: i: s", mktime (date ("H"), date ("i") - $ luka, date ("s"), date ("m"), date (" d "), date (" Y ")));
Oto zapytanie to zrobić
$ Ut = mysql_query ("update stan zestaw plus_login =" OFF ", gdzie TM <'$ tm'");
W trzecim kroku to zbiera członkowskich identyfikatorów logowania, dla których czas jest w ciągu ostatnich 10 minut i status jest ustawiony na ON. To oni są naszym zalogowany członków lub którzy są aktywni na witrynie. Kod można zobaczyć jeden Wyświetlanie którzy są aktywni w sekcji miejscu (Scroll down)
Co się dzieje, gdy użytkownik loguje się
Zmieniamy stan systemu na OFF i zniszcz sesję. Zachowaliśmy ten kod wewnątrz logout strony.
$ Q = mysql_query ("update ustawić status plus_login =" OFF "gdzie id = '$ session [id]'");
Co się dzieje, gdy członek nie wchodzi w interakcje więcej niż 10 minut?
Można zobaczyć za każdym razem, każda strona jest otwarty i jeśli strona powołuje bottom.php stronę wszyscy użytkownicy zostaną zmienione do stanu OFF, jeśli ich tm (pole) jest mniejszy niż 10 minut od chwili obecnej. Więc jeśli żaden inny członek otworzyła dowolną stronę, to stan nie zmieni się na OFF. Jeśli uważasz, że to ma być pod opieką, to możesz korzystać z jednego terminarza (win serwer) lub cron, aby uruchamiać część aktualizacji stanu raz na 10 minut. Sprawdź zapytania powyżej w trzecim kroku.
Wyświetlanie którzy są aktywni na stronie
Zachowaliśmy kod wewnątrz bottom.php pliku, więc z innej strony to strona może być tzw. Możesz zobaczyć kod wewnątrz tej stronie gdzie użyliśmy jedno proste zapytanie do zbierania identyfikator użytkownika, dla którego status jest ON i czas pole (tm) jest większa niż obecnie minus 10 minut. Zapytanie jest tutaj.
$ Qt = mysql_query ("select userid z plus_login gdzie tm> '$ tm" i status = "ON" ");
Reszta jest prosta wyświetlanie identyfikatorów użytkowników, można zobaczyć, jak wyświetlać w naszym wyświetlania danych samouczek.
To wszystko, pobrać plik zip z Kto jest online kod tutaj.













































