8 messaggi dal 24 luglio 2006
Buongiorno a tutti,
ho preso un file global asa dalla rete, per conoscere quanti utenti sono connessi ad una mia applicazione on line. I risultati ottenuti sono errati. Es. se uso Firefox ed apro piu' schede dalle quali lancio l'applicazione, il contatore si incrementa solo all'apertura della prima scheda e non sulle altre. Anche IE 6/7 non si comporta molto meglio?????
questo è lo script del file global.asa

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

Sub Application_OnStart
Application.Lock
Application("collegati") = 0
Application.UnLock
End Sub

Sub Session_OnStart
Application.Lock
Application("collegati") = Application("collegati") + 1
Application.UnLock
End Sub

Sub Session_OnEnd
Application.Lock
Application("collegati") = Application("collegati") - 1
Application.UnLock
End Sub

Sub Application_OnEnd
Application.Lock
Application("collegati") = 0
Application.UnLock
End Sub

</SCRIPT>

nel file default.asp dell'applicazione mi limito a fare:
<span class="collegati">Sessioni aperte: <% =Application("collegati")%></span>


ringrazio fin da ora che vorrà aiutarmi
Angelo

l'indirizzo dell'applicazione è:
http://www.portafogliomalpensa.it

Angelo Cesari
25 messaggi dal 19 febbraio 2007
www.idioblast.it
Ciao, il tuo problema non è derivato dal codice che hai usato (che a occhio mi sembra corretto) ma da Firefox Stesso.

I browser in generale, utilizzano un Cookie per memorizzare la variabile di sessione. Da qui il problema:

In Internet explorer se apriamo una nuova istanza del programma viene creato un nuovo cookie di sessione. Ci troveremo quindi con 2 finestre di Explorer aperte e 2 sessioni differenti. (Nel tuo caso, il contatore verrà incrementato 2 volte)

Firefox invece condivide lo stesso cookie di sessione per tutti i tab aperti e tutte le finestre aperte, quindi se apriamo 2 finestre di firefox separate, e 4 tab, tutti con lo stesso sito, avremo creato una sola sessione (Nel tuo caso, il contatore verrà incrementato solo 1 volta).

Per ovviare al problema devi creare dei profili utilizzando questo comando in DOS
firefox.exe -P NomeProfilo -no-remote

per creare più profili utente. Ti rimando a Google per maggiori informazioni sull'argomento.

Spero di essere stato chiaro,
Ciao Daniele

Azione, Reazione.
8 messaggi dal 24 luglio 2006
Grazie Daniele per le tue info

Angelo Cesari

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.