Newsgroup: it.comp.www.asp
Titolo: esite forse...

... un modo per interrogare il client per scoprire se è ancora collegato al
mio sito? Il mio problema è che vorrei tanto stimare al meglio il tempo di
visita soprattutto di chi vede solo la mia homepage, poichè tutti questi ora
hanno come minutaggio i 20min del Session_timeout.
Grazie.

 writes:
p> ... un modo per interrogare il client per scoprire se è ancora collegato al
p> mio sito?
Tutte le connessioni  sono già state chiuse (lato  client) dal momento
in  cui ha  finito  di leggere  una  qualsiasi pagina,  non esiste  un
concetto di "connessione al sito" per il TCP/IP.
Puoi provare a rielaborare l'output  di netstat per vedere, in un dato
momento, se  da una  certa macchina ci  sono connessioni, a  limite in
attesa della chiusura totale.
--
Gian Uberto| main(){printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}
Lauri      |                        David Korn, 1987 ioccc best one liner 
(aka saint)|-------------------------------------------------------------------
em@ail: 
sa...@eng.it
 ( vedere X-nospam nello header - see X-nospam in header )

attesa della chiusura totale.
Oppure (e qui mi darete del drogato, in senso bonario spero), potrebbe
definire degli intervalli di tempo (che definiscono la tolleranza di
precisione, che so di 1 minuto, per esempio) settati in una pagina in un
frame nascosto che controlla un cookie creato a questo scopo avente un
identificativo utente (o gruppo di utenti) che salva un progressivo
(incrementato dai refresh della pagina nascosta) in un database.
Se non si č capito nulla si consiglia di rileggere piů volte, o cercherň
di chiarire con uno schemino:
1-L'utente entra nel sito
2-Controllo cookie
 -Se non ha un cookie si crea uno avente codice numerico 
  uguale all'ultimo codice nel DB +1 e nel DB si setta come
  progressivo 0
 -Se ha il cookie: progressivo =progressivo +1 nel DB
3-Passa un minuto e la pagina si ricarica:
  Go To :2
Per me potrebbe funzionare. Certo, č un pň spartano e ingannabile, ma
con qualche controllo potrebbe stare in piedi (tipo: non aprire la
pagina contatore se non c'č il frameset intero del sito).
Che ne pensate?
Ciao!
Davide
-- 
Volontario Anti-Troll (TM) 
SecurFaq: 
http://members.nbci.com/gouldukat/
DocTrolls: 
http://it.geocities.com/roccopapaleo/faq/italiano/Troll.html
Netiquette: 
http://www.inferentia.it/netiquette/dis.html

 writes:
DC> 1-L'utente entra nel sito
DC> 2-Controllo cookie
DC>  -Se non ha un cookie si crea uno avente codice numerico 
DC>   uguale all'ultimo codice nel DB +1 e nel DB si setta come
DC>   progressivo 0
DC>  -Se ha il cookie: progressivo =progressivo +1 nel DB
DC> 3-Passa un minuto e la pagina si ricarica:
DC>   Go To :2
Hmmm. Ovviamente  non te  ne frega nulla  degli utenti di  Lynx...  Si
penso funzioni, il traffico dovrebbe essere contenibilissimo, ma forse
un paranoide con un occhio sul grafico del traffico si insospettisce a
vedere quegli impulsini periodici...


vedere quegli impulsini periodici...
beh, la stessa cosa senza aggiornare la pagina si può fare in
javascript, che con un ciclo periodico incrementa una variabile; alla
chiusura della pagina l'evento onunload invia il valore progressivo
tramite un form ad un'asp che la memorizza. 


 tramite un form ad un'asp che la memorizza.
Invia come??? ho provato con document.write ma mi si apre la pagina asp
chiamata.

> vedere quegli impulsini periodici...
DC> beh, la stessa cosa senza aggiornare la pagina si puň fare in
DC> javascript, che con un ciclo periodico incrementa una variabile; alla
DC> chiusura della pagina l'evento onunload invia il valore progressivo
DC> tramite un form ad un'asp che la memorizza. 
Se javascript non rompe troppo č un idea niente male!


chiamata.
inserisci nella pagina un form con un campo hidden valorizzato a 0,
tipo:
<form name="conta" action="registra.asp" target="_new" method="post">
<input type="hidden" name="tore" value="0">
</form>
Nell'head metti lo script che conta (forse č meglio metterlo in un'altra
pagina, non so se rallenta l'iterazione con gli oggetti nella pagina (si
puň provare), con ad esempio progressivo con nome "minuti"
nella pagina contenente lo script metti (se č diversa dalla pagina
contenente il form ricorda che devi mettere nomeframe.conta.tore:
<body unload="conta.tore=minuti;conta.submit();">
dato che recuperi con un semplice request.form("tore") dall'asp.
Nella pagina contenente l'asp puoi mettere ad esempio "Chiusura del sito
in corso... Attendere prego" o qualche stronzata del genere...
alla fine della procedura di scrittura sul DB (o file di testo, come
vuoi) Li avvisi che possono chiudere la finestra:
response.write("Operazione completata.<br>La ringraziamo per averci
visitato. Arrivederci!")
che peraltro ha un effetto positivo sul navigatore.
