webForumDet fria alternativet

Ett enkelt konstigt fel i min global.asa

ASP

2 svar · 150 visningar · startad av Lukaspojken

Medlem sedan maj 20011 312 inlägg
Frågan#1

Jag vill bara räkna antal besökare online och så här ser min global.asa ut:

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Session_OnStart
	Application("visitors") = Application("visitors") + 1 
End Sub

Sub Session_OnEnd
	Application("visitors") = Application("visitors") - 1
End Sub

Sub Application_OnStart
	Application("visitors") = 0
End Sub

</SCRIPT>

När jag skriver ut application så känns det som det är alltför många på siten. Stämmer koden?

------------------
Alltid lär man sig något nytt varje dag...

Medlem sedan juni 20003 169 inlägg
#2

Orkar inte kolla igenom din kod så här kommer en som funkar. ;)

<SCRIPT LANGUAGE=VBScript RUNAT=Server> 

SUB Application_OnStart 
Application("visitors") = 0
END SUB 

SUB Session_OnStart 
Application("visitors") = Application("visitors") + 1 
END SUB 

Sub Session_OnEnd 
Application("visitors") = Application("visitors") - 1 
End Sub 

Sub Application_OnEnd 

End Sub 

</SCRIPT>

[r] Efter att ha kollat på din kod så upptäckte jag en viss likhet med min... :)

------------------
Mvh. Wiberg

[Redigerat av Wiberg den 01 okt 2001]

Medlem sedan maj 20011 312 inlägg
#3

Det såg väldigt likt ut. Men du har en sub som jag inte har men den borde inte behövas för det finns inget i den.

Jag testade den här koden istället. Sökte lite på forumet. Men hur får jag bort en från active user om personen loggar ut självmant?

<SCRIPT LANGUAGE="VBScript" RUNAT="Server">

Sub Application_OnStart
	' Set our user count to 0 when we start the server
	Application("ActiveUsers") = 0
End Sub

Sub Session_OnStart
	' Change Session Timeout to 20 minutes (if you need to)
	Session.Timeout = 20
	' Set a Session Start Time
	' This is only important to assure we start a session
	Session("Start") = Now
	' Increase the active visitors count when we start the session
	Application.Lock
		Application("ActiveUsers") = Application("ActiveUsers") + 1
	Application.UnLock
End Sub

Sub Session_OnEnd
	' Decrease the active visitors count when the session ends.
	Application.Lock
		Application("ActiveUsers") = Application("ActiveUsers") - 1
	Application.UnLock
End Sub

</SCRIPT>

------------------
Alltid lär man sig något nytt varje dag...

257 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)