Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 13 su 13

Discussione: Nome utenti connessi.

  1. #11
    Praticamente dovrei creare una tabella "UTENTI_CONNESSI" con due campi UTENTE_CONNESSO e DATA_CONNESSIONE, l'unica cosa che non capisco è che non trovo come fa a trovare l'iscritto e scriverlo nella tabella UTENTI_CONNESSI. :master:

  2. #12
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    connessione.asp:
    codice:
    <%
    
    'se la sessione è scaduta allora utilizza il cookie per IdUtente e username
    
    IdUte = Session("id_utente")
    'response.write IdUte &"
    "
    
    
    'Funzione per la trasformazione della data a seconda dell'LCID
    '1 parametro la data formato testo o formato data,
    '2 nNamedFormat sono i formati data accettati dalla funzione nel motore vbscript FormatDateTime
    '3 LCID (i + usati sono 1033 per le date in inglese e 1040 per la data in italiano
    Function FormatDateTimeLCID (str, nNamedFormat, nLCID)
    dim strRet, nOldLCID
    strRet = str
    If (nLCID > -1) Then nOldLCID = Session.LCID
    On Error Resume Next
    If (nLCID > -1) Then  Session.LCID = nLCID
    If ((nLCID < 0) Or (Session.LCID = nLCID)) Then strRet = FormatDateTime(str, nNamedFormat)
    If (nLCID > -1) Then Session.LCID = nOldLCID
    FormatDateTimeLCID = strRet
    End Function 
    
    Set objConn=Server.CreateObject("ADODB.Connection") 
    strConn="driver={Microsoft Access Driver (*.mdb)}; " 
    strConn=strConn & " DBQ=" & Server.MapPath("users.mdb") 
    strConn=strConn & ";pwd=" & strCodedb
    objConn.Open (strConn)
    data = date()
    
    if len(IdUte) > 0 then 
    sqlx= "Select * from codici where id_user = "&IdUte
    'response.write sqlx &"
    "
    objConn.execute(sqlx)
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sqlx, objConn 
    else
    response.write ""
    end if
    
    'solo se l'utente è loggato eseguo lettura preventiva ed eventualmente insert
    if len(IdUte) > 0 then 
    
      sql= "Select * from utenti_connessi where id_utente_connesso = "&IdUte
      'response.write sql &"
    "
      objConn.execute(sql)
      
      Set objrs = Server.CreateObject("ADODB.Recordset")
      objrs.Open sql, objConn 
    
      if objrs.eof then 
      
       sqlz = "INSERT INTO utenti_connessi (id_utente_connesso, data_connessione, utente_connesso)VALUES(" &IdUte& ", #"& now() &"#, '"& rs("username") &"')"
       'response.write sqlz &"
    "
       objConn.execute(sqlz)
       
      end if
      
      objRs.Close
      set objrs = nothing 
    
      end if
      
      if len(IdUte) > 0 then 
      sqlw = "UPDATE Utenti_connessi set valido=true WHERE Id_utente_connesso = " & IdUte
      'response.write sqlw &"
    "
      objConn.execute(sqlw)
      end if 
      
    'cancello l'utente dalla tabella degli utenti connessi (impostando data e ora nel formato corretto)
    differenza = dateadd("n", -15, now())
    'response.write differenza &"
    "
    dataInvertitaInglese = FormatDateTimeLCiD(differenza,2,1033)
    soloOrario = FormatDateTimeLCiD(differenza,3,1040)
    strSQL = "DELETE * FROM Utenti_connessi WHERE Data_connessione < #" & dataInvertitaInglese & " " & soloOrario & "#"
    'response.write strSQL
    objConn.execute(strSQL)
     
    %>
    Estrazione.asp:
    codice:
    <%
    Set objConn=Server.CreateObject("ADODB.Connection") 
    strConn="driver={Microsoft Access Driver (*.mdb)}; " 
    strConn=strConn & " DBQ=" & Server.MapPath("users.mdb") 
    strConn=strConn & ";pwd=" & strCodedb
    objConn.Open (strConn)
    
    sqlx= "Select * from utenti_connessi where valido = true"
    'response.write sqlx &"
    "
    
    Set rec = Server.CreateObject("ADODB.Recordset")
    rec.Open sqlx, objConn 
    
    if rec.eof then
    
    response.write ("<font color=red size=1 font face=verdana>Nessun utente attivo in questo momento.</font>") & "
    "
    
    else
    
    While Not REC.EOF
    
    var = var & rec("utente_connesso") & ", "
    
    rec.MoveNext
    wend
    
    var = Left(var,Len(var)-2)
    response.write ("<font color=blue size=1 font face=verdana>Utenti attivi: </font><font color=red size=1 font face=verdana>"& var &"</font>")
    
    end if
    
    rec.Close
    objConn.Close
    Set rec = Nothing
    Set objConn = Nothing
    
    %>

  3. #13
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    254
    Riprendo questo argomento perchè ho anch'io il problema di cancellare gli utenti non più attivi...


    'cancello l'utente dalla tabella degli utenti connessi (impostando data e ora nel formato corretto)
    differenza = dateadd("n", -15, now())
    'response.write differenza &"
    "
    dataInvertitaInglese = FormatDateTimeLCID(differenza,2,1033)
    soloOrario = FormatDateTimeLCiD(differenza,3,1040)
    strSQL = "DELETE * FROM Utenti_connessi WHERE Data_connessione < #" & dataInvertitaInglese & " " & soloOrario & "#"
    'response.write strSQL
    objConn.execute(strSQL)
    Se ho capito bene tu cancelli gli utenti dopo 15 minuti, ma così potrebbero essere ancora attivi. Oppure ho capito male io?

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 © 2026 vBulletin Solutions, Inc. All rights reserved.