Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Wygasniecie session_id
Konradek
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 5.06.2008

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


Witam wszystkich,

Czy możecie mnie pokierować na właściwe tory.

mam problem z session id.
Zapisuję ja w bazie danych, zaraz po zalogowaniu się użytkownika i następnie kierując się session id, pokazuję aktualnie zalogowanych userów.
Tylko, jest problem kiedy dany user nie wylogowuje się (brak kliknięcia wyloguj, gdzie niszcze sesje i nadpisuje w bazie session id na NULL), tylko zamyka przeglądarkę.

session id nie jest usuwane z bazy i na stronie mam zalogowanych użytkowników, których już dawno nie ma (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Proszę o podanie jakiegoś sposobu na ten fenomen (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Z góry dziękuję

Konradek
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sowiq
post
Post #2





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


Po pierwsze nie wiem po co zapisywać sid do bazy danych, skoro równie dobrze możesz zapisywać potrzebne dane w tablicy $_SESSION ?

Ale jeśli koniecznie chcesz tak robić to jest prosta metoda na Twój problem - razem z sid zapisuj timestamp [ funckja time() ]. Potem w zależności od tego jaką masz długość trwania sesji możesz np. podczas logowania kolejnego użytkownika wykonać:
  1. DELETE FROM `zapisane_sesje` WHERE `timestamp` < '".( time() - 60 * $dlugosc_sesji_w_minutach )."'
Go to the top of the page
+Quote Post
Konradek
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 5.06.2008

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


Cytat(sowiq @ 5.06.2008, 18:06:30 ) *
Po pierwsze nie wiem po co zapisywać sid do bazy danych, skoro równie dobrze możesz zapisywać potrzebne dane w tablicy $_SESSION ?


no właśnie po to, abym mógł pokazać zalogowanych użytkowników (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Dane usera po zalogowaniu są trzymane w sesji, zapisywanie session id w bazie danych jest tylko po to, aby pokazać kto z uzytkownikow jest aktualnie na stronie.

jeśli jest na to jakiś inny sposób, chętnie wysłucham każdej waszej porady

Pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 16.10.2025 - 08:23