[ torb-d-man @ 13.09.2011. 15:01 ] @
Poz. interesuje me da li neko zna kako se u ASP.NET-u prati ko je sve od korisnika ulogovan na ASP.NET sajt (sql baza). Tako da u svakom trenutku imam listu ulogovanih korisnika negde na sajtu. Proveru stanja u bazi npr. tabela KORISNICI kolona KORISNICI.ULOGOVAN bih vršio nekim js timerom na svakih 1min bih slao AJAX zahtev gde bih vršio upit nad bazom. Kako sam ja to zamislio: kada se korisnik uloguje postavim kolonu KORISNICI.ULOGOVAN = 'da' i KORISNICI.VREMELOGOVANJA = getdate(). i onda samo izlistavam one korisnike gde je ULOGOVAN = 'da'. Problem mi je što ne znam kako da uhvatim događaj kada neko napusti sajt da bih postavio ULOGOVAN = 'ne', zato što korisnik to može uraditi na više načina: 1)Može da klikne na link "izloguj se" (kad bi svi bili poslušni i radili logout ovako...međutim...) 2)Može samo da zatvori tab na iksić [X] 3)Može da zatvori ceo brovser na: - iksić [X] - Alt + F4 - desnim u taskbaru na taj neki brovser pa "Close [X]" - iz task managera na "End Task" - iz task managera da ubije proces "End Process" - na kraju krajeva može da restartuje ili izgasi komp ručno. -....ako neko zna još neki način neka dopuni ... Kako da ja detektujem da se nešto od ovoga desilo i da kažem u bazi KORISNICI.ULOGOVAN = 'ne' i KORISNICI.VREMELOGOVANJA = 'null' gde IDKorisnika = 1567 npr.??? Video sam ima js event ONBEFOREUNLOAD što u velikom delu mi rešava problem osim: -Kada korisnik klikne na refresh stranice ovaj događaj se ispaljuje (a korisnik se nije izlogovao) što mi ne odgovara. -Kada korisnik zatvori ceo brovser (na neki od gore pomenutih načina se ONBEFOREUNLOAD ispaljuje i to zavisi od brovsera do brovsera i od načina do načina) ,tako da ONBEFOREUNLOAD mi nije trajno rešenje. Treba mi način tj. neko UNIVERZALNO rešenje (koje bi objedinilo sve brovsere i svaki od gore pomenutih načina izlogovavanja) kako da imam stalno u bazi u ril tajmu pravo stanje ko je ulogovan a ko ne. ASP.NET sajt + SQL baza. Unapred hvala ako neko zna kako se ovo radi ili ako je neko naleteo na neki link.. |