Global.asa og Session_OnEnd
Jeg har lavet et online brugere script, det virker fint når brugeren skal tilføjes til online listen, men når de skal slettes igen, når de har lukket browseren eller lign. vil den ikke virker.Jeg har en global.asa, hvor jeg i min Session_OnStart tilføjer dem til en database med Session.SessionID, UsrID, login tid osv.
Så har jeg en side som er includeret på alle sider, hvor den updaterer databasen med tiden nu, hvor de befinder sig osv.
Og i min Session.OnEnd har jeg en SQL som skulle slette dem fra databasen, men det er så mit problem at den ikke gør det.
Jeg har også prøvet med at regne antal minutter ud imellem tiden de loggede ind og tiden som sidst var logget på dem også sige at hvis den er større end Session.Timeout, så skal den slette dem, men det virkede heller ikke.
'################# GLOBAL.ASA START #################
<script language="VBScript" runat="Server">
Sub Session_OnStart
Session.Timeout = 5
If Request.Cookies("autologin_cichlide-net")("Adminpass") = "OK" Then
OnlineUsrID = Request.Cookies("autologin_cichlide-net")("AdminID")
OnlineBrugernavn = Request.Cookies("autologin_cichlide-net")("AdminAlias")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("../database/sdfl3s344zzkltat.mdb")
Set conntemp = Server.CreateObject("ADoDB.Connection")
conntemp.open DSN
SQL_LOGIN = "INSERT INTO BRUGERE_ONLINE "
SQL_LOGIN = SQL_LOGIN & "(SID, O_USRID, O_BRUGERNAVN, O_TID_LOGGED_IND) "
SQL_LOGIN = SQL_LOGIN & "VALUES "
SQL_LOGIN = SQL_LOGIN & "('"& Session.SessionID &"', '"& OnlineUsrID &"', '"& OnlineBrugernavn &"', #"& Time() &"#)"
conntemp.Execute(SQL_LOGIN)
End If
End Sub
Sub Session_OnEnd
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("../database/sdfl3s344zzkltat.mdb")
Set conntemp = Server.CreateObject("ADoDB.Connection")
conntemp.open DSN
SQL_DELETE_LOGIN = "DELETE * FROM BRUGERE_ONLINE WHERE (O_UsrID = "& Request.Cookies("autologin_cichlide-net")("AdminID") &")"
conntemp.Execute(SQL_DELETE_LOGIN)
rsCheckLogin.Movenext
End Sub
</script>
'################### GLOBAL.ASA END ####################
'#######################################################
'################# INCLUDE FILEN START #################
If Request.Cookies("autologin_cichlide-net")("Adminpass") = "OK" Then
Set conntemp = Server.CreateObject("ADoDB.Connection")
conntemp.open DSN
SQL_UPDATE_LOGIN = "UPDATE BRUGERE_ONLINE SET "
SQL_UPDATE_LOGIN = SQL_UPDATE_LOGIN & "O_TID_ONLINE = #"& Time() &"#, O_SIDSTE_SIDE = '"& Request.ServerVariables("SCRIPT_NAME") &"' WHERE (O_UsrID = "& Request.Cookies("autologin_cichlide-net")("AdminID") &")"
conntemp.Execute(SQL_UPDATE_LOGIN)
End If
'################# INCLUDE FILEN END #################
På forhånd tak!
