webForumDet fria alternativet

tidsskillnad för utloggning

ASP

10 svar · 262 visningar · startad av WebbisNet

Medlem sedan feb. 20032 027 inlägg
Frågan#1

Jag har problem med att logga ut en användare efter ex 20 minuter. När en besökare rör sig på sajten så ändras tiden i databasen till den aktuella. Men om man sen är inaktiv i 20 minuter så vill jag logga ut användaren, hur gör man det?

Medlem sedan dec. 20003 563 inlägg
#2

Vilken teknik använder du just för att uppdatera användare?

Om du lägger in session.sessionID i databasen och kör den metoden kan du helt enkelt ta bort denna rad i global.asa i session_OnEnd

Medlem sedan feb. 20032 027 inlägg
#3

jag använder

If Len(Session("userID")) > 0 Then 'om inloggad
 ' ";Persist Security Info=False"
Set check=objConn.Execute("UPDATE tblUsers SET LTime = Time() WHERE userID = " & Session("UserID"))
End If

i en includefil för att uppdatera tiden i databasen när användaren är aktiv

Medlem sedan dec. 20003 563 inlägg
#4

Sessionen försvinner automatiskt efter 20 minuter.

session.timeout = 20
Medlem sedan feb. 20032 027 inlägg
#5

Det vet jag, men jag vill logga ut användaren och skicka till startsidan efter 20 minuter

Medlem sedan dec. 20003 563 inlägg
#6
If Len(Session("userID")) > 0 Then 'om inloggad
 ' ";Persist Security Info=False"
Set check=objConn.Execute("UPDATE tblUsers SET LTime = Time() WHERE userID = " & Session("UserID"))
else
  response.redirect "start.asp"
End If
Medlem sedan apr. 2004778 inlägg
#7

Kan du inte lägga det i Global.asa OnSession_End att du loggar ut användaren ur databasen och kör en response.redirect?

Otestat men det borde väl fungera?

Medlem sedan feb. 20032 027 inlägg
#8

Jag kan inte global.asa, vet inte exakt hur man använder den

Medlem sedan dec. 20003 563 inlägg
#9

<Tips> Lär dig. ;)

Finns massa exempel här på hur man använder just utloggning och global.asa. Bara att söka.

Medlem sedan feb. 20032 027 inlägg
#10

när jag har ex Session.TimeOut=1 så är jag fortfarande och kan fortsätta som vanligt efter en minuts inaktivitet, inga sessioner verkar dö

Medlem sedan apr. 2004778 inlägg
#11

Jag tror att du måste använda dig av Session_OnStart och Session_OnEnd i global.asa
I Session_OnStart och Session_OnEnd sätter du Session("userID") = 0 så att användaren är utloggad när en ny session påbörjas och användaren blir utloggad när sessionen går ut.
Om användaren är på en sida i 20 minuter och sen byter sida så startar sessionen igen. Jag är inte säker men jag tror att sessionsvärdet kan ligga kvar då.
Prova.
Som cyprys säger, lär dig global.asa, det finns mycket nyttigt du kan använda dig av.

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)