lutador
4.06.2008, 16:46:58
Witam,
robie tablice czasow zalogowac i wylogowan uzytkownikow z serwisu. Logowanie jest oparte o sesje. Jezeli uzytkownik wyloguje sie poprzez klikniecie na przycisk wyloguj wtedy nie ma problemu i zapisuje mi sie czas wylogowania w bazie ale problem jest gdy uzytkownik zamknie przegladarke przez X Jak wtedy zapisac czas wylogowania? wiem ze bedzie to czas przyblizony.. tzn czas klikniecia na X + dlugosc sesji Jak porawdzic sobie z tym problemem?
Hmm, nie zawsze skuteczne (brak/wyłączony JS), ale może w ten sposób: skrypt oparty o AJAX, który wykonuje się co np. 5 minut (wtedy rozdzielczość wynosi 5 minut). Jeśli przestanie się wykonywać, to będziesz miał wpisany czas logowania. ;]
można bez użycia Ajaxa... zakładając, że cały serwis jest "składany" w jakimś skrypcie głównym, np. index.php, wystarczy, że na początku tego skryptu dopiszesz kilka linijek kodu które po kolei:
1. sprawdzą (na podstawie sesji), czy user jest zalogowany
2. jesli tak, to zapis do bazy => czas wylogowania = czas bieżący + czas życia sesji.
w dalszej częsci kodu, jeśli użytkownik kliknie na "wyloguj",
to zapisujesz do bazy => czas wylogowania = czas bieżący
powinno działać z wystarczającym przybliżeniem, można okreslić to jako czas ostatniej aktywności użytkownika... powodzenia.
Ale jeśli user czyta jakiś tekst dość długo, to wtedy spada dokładność.
IMHO, najlepiej obie techniki połączyć. :]
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.