Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Logowanie ze statystyka, Logowanie ze statystyka
relaxant
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 9.08.2004
Skąd: Bielsko-Biała

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


Witam.

Wymyśliłem sobie ostatnio żeby dopisać do sktyptu logowania statystykę. Wszystko zapisywane byłoby w bazie tj.: identyfikator logującego, IP, czas zalogowania. Dodakowo w przyszłszości zamierzam dodać śledzenie użytkowników.

Wszystko wygląda fajnie i wogóle tylko pojawia się jeden mały problem. Gdy użytkownik zechce się wylogować kliknie sobie ładny button wyloguj, co wywoła funkcję które zapisze aktualny czas do bazy i zamknie sesje. Jeśli jednak się nie wyloguje (zamknie okno przeglądarki) sesja zostanie sama zamknięta po określonym czasie i czas wylogowania nie zostanie zapisany do bazy (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Może ktoś już walczył z podobnym problem. Będe wdzięczny za wskazówki.
Go to the top of the page
+Quote Post
SongoQ
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


A moze zakonczenie sesji po przez dluga nieaktywnosc = czas wylogowania ? Czyli czas wylogowania = czas ostatniej aktywnosci starszy niz np 30 minut?
Go to the top of the page
+Quote Post
relaxant
post
Post #3





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 9.08.2004
Skąd: Bielsko-Biała

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


No jest to jakis sposób. Znalazłem jednak funkcje session_set_save_handler (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) I próbuje napisac swoja funkje destroy. Co o tym myślicie?
Go to the top of the page
+Quote Post
matid
post
Post #4





Grupa: Zarejestrowani
Postów: 362
Pomógł: 0
Dołączył: 18.02.2004
Skąd: Knurów

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


Cytat(relaxant @ 2005-07-26 11:19:18)
No jest to jakis sposób. Znalazłem jednak funkcje session_set_save_handler (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) I próbuje napisac swoja funkje destroy. Co o tym myślicie?

AFAIK to tak nie przejdzie. Funkcja destroy jest wykonywana przy niszczeniu sesji, a nie przy usuwaniu ich przez garbage collector czy usunięciu ciastka z identyfikatorem sesji.
Go to the top of the page
+Quote Post
NuLL
post
Post #5





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


Pro -> php

Pozatym czegoś takiego jak zamknięcie sesji w razie wyłączenia przeglądarki nie da się uzyskać. Było już o tym dość dużo na forum.
Go to the top of the page
+Quote Post
SongoQ
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


@relaxant Zaimplementuj session_set_save_handler i dodatkowy wykorzystaj to co Ci pisalem wczesniej, mysle ze osiagniesz to co chciales.
Go to the top of the page
+Quote Post
bieniek
post
Post #7





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 6.07.2005

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


Ja bym spróbował JS onunload="zapisz()"
A w funkcji zapisz coś takego
Kod
function zapisz() {
   var httpReq  = new XMLHttpRequest();
   httpReq.open("POST", 'url_do_skryptu_php',false);
   httpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
   httpReq.send('np costakigo: timestamp=<?php time() ?>);
   httpReq.responseText;
}


A w skrypcie normalnie zapisujesz do bazy
Sam używam HttpRequesta do innych rzeczy, a tu na szybko sklecilem taką funkcyjkę (proszę o uwagi).
Go to the top of the page
+Quote Post
sobstel
post
Post #8





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

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


set_session_save_handler i odpowiednie stworzona funkcja gc powinna zalatwic sprawe
Go to the top of the page
+Quote Post
SongoQ
post
Post #9





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


@bieniek Twoj pomysl jest ok, ale nie zawsze skuteczny.
Go to the top of the page
+Quote Post
bieniek
post
Post #10





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 6.07.2005

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


@SongoQ Jak byś mógł to napisz w jakich przypadkach może zawieść. Dodam jeszcze tylko, że uzależnienie od przeglądarki mam jak najbardziej zrobione, to jest okrojona wersja (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
SongoQ
post
Post #11





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


- wylaczenie JS
- zamkniecie PC
- wywalenie przegladarki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
- zabicie procesu
i wiele innych.
Go to the top of the page
+Quote Post
relaxant
post
Post #12





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 9.08.2004
Skąd: Bielsko-Biała

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


SongoQ ma racje JS to nie najlepsze rozwiązanie choć przyznać trzeba że pomysł ciekawy. Jednak staram się jej unikać jak ognia więc raczej nie skorzystam, ale dzieki za odpowiedź.

Będe próbował z funkcją gc.
Dzięki

Ten post edytował relaxant 26.07.2005, 19:10:49
Go to the top of the page
+Quote Post

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: 6.10.2025 - 20:19