Esiste un modo per conteggiare il numero delle sessioni aperte su di un sito??
Grazie
Esiste un modo per conteggiare il numero delle sessioni aperte su di un sito??
Grazie
Robycodice:<% for each x in Session.Contents Response.Write(x & "=" & Session.Contents(x) & " ") next %>or: oppure <% For i=1 to Session.Contents.Count Response.Write(i & "=" & Session.Contents(i) & " ") Next %>
www.creamweb.it [v. 3.0]
:: Script ASP!
:: Web directory gratuita!
:: Campioni del mondo!
dunque ho fatto cosi:
<%
if Session ("utente") = "" then
session ("utente") = "OK"
rscontatore ("totali") = accessi_totali + 1
rscontatore.update
end if
For i=1 to Session.Contents.Count
'Response.Write(i & "=" & Session.Contents(i) & "
")
intcount = intcount + 1
Next
%>
e poi ho scritto le sessioni:
<% Response.Write "ON-LINE: " & intcount'(i & Session.Contents(i))
%>
ma mi da sempre 1
ho sbagliato qualcosa?
nessuno sa aiutarmi??
ciao
l'approccio e' sbagliato. tu vuoi sapere quanti utenti ci sono in linea contando le sessioni (non le Session) aperte. Non si puo', semplicemente, perche' le Session sono private della singola sessione (per questo ti da' sempre 1...). Puoi comunque usare una variabile Application che e' visibile da tutte le sessioni.
ciao..
ti ringrazio dell'aiuto.
ho risolto cosi se interessa a qualcuno:
copiare ed incollare (con il blocco notes) il seguente script sulla root principale, e chiamarlo global.asa
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Session_OnStart
Session.Timeout = 3
APPLICATION.LOCK
Application("presenti") = Application("presenti") + 1
APPLICATION.UNLOCK
End Sub
Sub Session_OnEnd
APPLICATION.LOCK
Application("presenti") = Application("presenti") - 1
APPLICATION.UNLOCK
End Sub
Sub Application_OnStart
APPLICATION.LOCK
Application("presenti") = 0
APPLICATION.UNLOCK
End Sub
Sub Application_OnEnd
End Sub
</SCRIPT>
Per richiamare gli online sul tuo sito basta semplicemente fare
<% Response.Write(Application("presenti")) %>