Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135

    Utenti Connessi: Mostrare Nome

    Ciao.

    Con la ricerca ho trovato questo link:

    http://www.aspitalia.com/script/386/...=elenco+utenti

    Ma non funziona bene perchè stampa i nomi degli utenti connessi senza alcun separatore (virgola, etc):

    codice:
    Utenti Collegati:
    A0067A0032A045
    Ho seguito le istruzioni ecco il global.asa:

    codice:
    <SCRIPT language="VBScript" Runat="Server"> 
    
    Sub Application_OnStart
      Application("intActiveUserNumber") = 0 
      Application("Users") = ""
    End Sub
    
    Sub Session_OnStart 
    Session.Timeout = 2 
    Application.Lock 
    Application("intActiveUserNumber") = Application("intActiveUserNumber") + 1 
    Application.UnLock 
    End Sub 
    
    Sub Session_OnEnd
      Application.Lock
      Application("intActiveUserNumber") = Application("intActiveUserNumber") - 1 
      Application("Users") = Replace( Application("Users") , Session("utente") & "|" ,"")
      'quando scade una sessione viene eliminato il nome dell'utente dalla variabile di
      'applicazione che contiene l'elenco degli utenti attivi
      Application.UnLock
    End Sub
    
    </SCRIPT>
    Questo l'ho inserito in login.asp:

    codice:
    Session("utente") = Request("user")
    if InStr(1, Application("Users"), Session("utente") & "|" ) = 0 then
      'se l'utente non è già presente
      Application.Lock
      'viene aggiunto l'utente appena loggato alla stringa che contiene
      ' l'elenco degli utenti
      Application("Users") = Application("Users") & Session("utente") & "|"
      Application.UnLock
    end if
    e questo in vis.asp:

    codice:
    <%
    
    dim arrUtenti
    Response.Write "Utenti Collegati:
    "
    arrUtenti = Split(Application("Users"),"|")
    
    for i = 0 to UBound(arrUtenti)
      Response.Write arrUtenti(i) & "
    "
    next
    
    %>

    Sapete aiutarmi? grazie
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    Application("Users") = Application("Users") &", "& Session("utente") & "|"
    Roby

  3. #3
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Non avevo ancora visto il tuo nuovo avatar... complimenti... :maLOL:

    Grazie per il suggerimento, ma perchè adesso stampa:
    codice:
    Utenti Collegati:
    A0037A045, A0067,
    Ma non c'è nulla di funzionante in rete?
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Devi solo togliere l'ultima virgola???
    Usa la left...

    Roby

  5. #5
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Originariamente inviato da Roby_72
    Devi solo togliere l'ultima virgola???
    Usa la left...

    Roby
    E per gli utenti che rimagono appesi???
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  6. #6

  7. #7
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Mi rimangono gli utenti appesi, nel senso che anche dopo la scadenza della sessione (uso quella di default) continuano ad apparire come connessi:

    A0037A559, A0067, A0073
    in quest'esempio A0037A559, sono utenti "appesi"... mi spiego?
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  8. #8
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Ho scritto così:

    login.asp:

    codice:
    Session("utente") = Request("user")
    if InStr(1, Application("Users"), Session("utente") & "|" ) = 0 then
    
      'se l'utente non è già presente
      Application.Lock
      
      'viene aggiunto l'utente appena loggato alla stringa che contiene l'elenco degli utenti
      Application("Users") = Application("Users") &"
     "& Session("utente") & "|"
      Application.UnLock
    end if
    Per visualizzare gli utenti connessi:

    codice:
    <%
    
    session.lcid = 1040
    
    IP = Request.ServerVariables("REMOTE_ADDR")
    From = UCase(Request.ServerVariables("HTTP_ACCEPT_LANGUAGE"))
    sID = Session.SessionID 
    
    response.write "<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0><tr><td>"        
    response.write "<b style=""font-size:10px;font-family:verdana;color:#999999;"">http://" & request.servervariables("HTTP_HOST") & " - Utenti collegati (" & Now() & ")[/b]
    
    "
    response.write "</td></tr></table>"
    response.write "<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 style=""border: 1px Solid #6699CC;""><tr><td>"        
    response.write "<TABLE BORDER=0 CELLPADDING=2 CELLSPACING=2 style=""font-size=11px;font-family:tahoma;"" width=""100%"" BGCOLOR=WHITE>"        
    Response.Write "<tr bgcolor=#dcdcdc>"
    Response.Write "<td align=center>ID</td>"
    Response.Write "<td align=center>Matricola</td>"
    Response.Write "<td align=center>Indirizzo IP</td>"
    Response.Write "<td align=center>Da</td>"
    Response.Write "</tr>"
    
    count=0
    arrUtenti = Split(Application("Users"),"|")
    for i = 0 to UBound(arrUtenti)
    
    If count Mod 2 = 0 Then bgclr = "#F6F6F6" Else bgclr = "#EFEFEF" End if
    			count=count+1
    				Response.Write "<tr bgcolor=" & bgclr & ">"
    				Response.Write "<td align=center>" & right(sID, 4) & "</td>"
    				Response.Write "<td align=center>"& arrUtenti(i) & "</td>"
    				Response.Write "<td align=center>"& ip & "</td>"
    				Response.Write "<td align=center>"& from & "</td>"
    				Response.Write "</tr>"
    	            Response.Write "</table>"
                    Response.write "</td></tr></table>
    "
    		        Response.write "<table width=""100%"" height=""100%"" border=0 cellspacing=0 cellpadding=0><tr><td align=center valign=bottom>"
    		        Response.write "</td></tr></table>"	        
    next
    
    %>
    Ecco cosa ottengo... dove sbaglio ???
    Immagini allegate Immagini allegate
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  9. #9
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Dunque... ho ravanato come un folle nella ricerca (benedetta) ed alla fine ho trovato ciò che fa per me:

    http://forum.html.it/forum/showthrea...tente+connesso

    Funziona tutto bene, tranne che non riesco a tabellare i nomi degli utenti ed altri dati che mi servono, potete darmi una dritta per favore?:

    codice:
    <%
    
    Dim arrUtenti, i 
    Response.Write "<font color=blue size=1 font face=verdana>Navigatori: </font>"
    
    arrUtenti = Split(Application("Utente"),"|")
     
    dim utenti, aut
    aut = 0
    
    set objaut=Server.createobject("ADODB.Connection") 
    objaut.ConnectionString = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" &Server.mappath("database/db.mdb") 
    objaut.open
    set rsaut = Server.CreateObject("ADODB.Recordset") 
    for i = 0 to UBound(arrUtenti)-1
    
    ' calcolo visitatori autenticati
    
    sql="SELECT * FROM codici WHERE username ='"&left(arrUtenti(i), instr(arrUtenti(i), "#")-1)&"' AND id_user = "&cint(mid(arrUtenti(i), instr(arrUtenti(i), "#")+3))&""
    rsaut.open sql, objaut, 3, 3
    if not rsaut.eof then
    	aut = aut + 1
    end if
    
    if i <> UBound(arrUtenti)-1 then
    response.write ("<font color=red size=1 font face=verdana>"&replace(arrUtenti(i), "#^#", " ")&", </font>")
    else 
    response.write ("<font color=red size=1 font face=verdana>"& replace(arrUtenti(i), "#^#", " ")&"</font>")
    end if 
    
    rsaut.close
    
    Next 
    
    set rsaut = nothing
    ' visitatori totali in linea
    response.write ("
    ")
    response.write ("<font color=red size=1 font face=verdana>Utenti connessi: "&Application("intActiveUserNumber")&"</font>")
    
    ' visitatori autenticati
    response.write ("
    ")
    response.write ("<font color=red size=1 font face=verdana>Utenti autenticati: "&aut&"</font>")
    
    objaut.Close 
    Set objaut = Nothing 
    
    %>
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.