webForumDet fria alternativet

Fel i Global.asa?

ASP

2 svar · 180 visningar · startad av bigsky

Medlem sedan maj 2002821 inlägg
Frågan#1

Varför funkar inte koden som ska sätta värdet till False? Om en användare glömmer att logga ut på vanligt sätt så ska global.asa göra det åt användaren då dennes session går ut. Sökvägen till DB är rätt och jag får aldrig några felmeddelanden. Det händer bara inget. Visst är det väl meningen att global.asa ska köras automatiskt? Man behöver ju inte köra filen på nåt sätt, lr?

<script language=VBScript runat=Server>
Sub Session_OnStart()
Session.Timeout = 10
   Application.Lock
      Application("NumUsers") = CInt(Application("NumUsers")) + 1
   Application.Unlock
End Sub
Sub Session_OnEnd()
   Application.Lock
      Application("NumUsers") = CInt(Application("NumUsers")) - 1
   Application.Unlock
   Application.Lock
      username = Session("username") 
      Dim ConnectStr, StatusConn
         ConnectStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("data/members.mdb")
         Set StatusConn = Server.CreateObject("ADODB.Connection")
         StatusConn.Open ConnectStr
	  Set rsUpdate = Server.CreateObject("ADODB.Recordset")
	     rsUpdate.Open "users WHERE Username = '" & username & "' ", StatusConn, 3, 3
         rsUpdate("Countsessions") = False
         rsUpdate.Update
	     rsUpdate.Close
         Set rsUpdate = Nothing
      StatusConn.Close
      Set StatusConn = Nothing
   Application.Unlock
End Sub
</script>
Medlem sedan juni 200032 967 inlägg
#2

Har du kört koden utanför glabal.asa så du vet att den fungerar?

Medlem sedan maj 2002821 inlägg
#3

Japp, utan problem.

250 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)