31. marts 2004 - 17:20
Der er
1 kommentar og
1 løsning
Antal brugere online?
Hvordan kan jeg finde ud af hvor mange brugere der er online på min side...?
kan jeg bruge min sessions til noget (dem bruger jeg kun når personer logger ind) Men jeg vil gerne vide hvor mange der i alt er online...?
Skal jeg sætte session timeout til 1 min?
01. april 2004 - 13:21
#2
<%
timeout_sek = 70 ' timeout i sekunder
max_users = "500" ' max antal brugere der skal tælles
cookies_check = "no" ' skal der tjekkes om browseren accepterer cookies ["yes" / "no"]
Session.Timeout = 2
if session("usernumber") <> "" then
application("usersonline_" & session("usernumber")) = now
else
if InStr(1, request.servervariables("HTTP_COOKIE"),"ASPSESSIONID", 1) <> 0 or cookies_check = "no" then
'Browseren understøtter cookies (eller der tjekkes ikke for om browseren acceptere cookies)
For i = 1 to max_users
if IsDate(application("usersonline_"&i)) or application("usersonline_"&i) = "" then
if application("usersonline_"&i) = "" then
session("usernumber") = i
i = max_users
elseif DateDiff("s",application("usersonline_"&i),Now) > timeout_sek then
session("usernumber") = i
i = max_users
end if
end if
next
application("usersonline_"&session("usernumber")) = now
application("userinfo_" & session("usernumber")) = "[" & Request.ServerVariables("REMOTE_HOST") & "]</td><td nowrap>[" & Request.ServerVariables("HTTP_ACCEPT_LANGUAGE") & "]</td><td nowrap>[" & now & "]"
if application("usersonline") < session("usernumber") then
application("usersonline") = session("usernumber")
end if
elseif request("mode") <> "check" then
response.redirect Request.ServerVariables("SCRIPT_NAME") & "?mode=check"
else
'Browseren understøtter ikke cookies
response.write "Din browser understøtter ikke cookies"
end if
end if
if application("usersonline") = "" then
application("usersonline") = 1
end if
For i = 1 to application("usersonline")
if len(application("usersonline_"&i)) then
if DateDiff("s",application("usersonline_"&i),Now) > timeout_sek then
application("usersonline_"&i) = ""
application("userinfo_"&i) = ""
else
usersonline = usersonline+1
end if
max_i = i
end if
next
application("usersonline") = max_i
response.write "online: " & usersonline & "<br>"
%>