Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Nomi utenti connessi

  1. #1
    Utente di HTML.it L'avatar di digitm
    Registrato dal
    May 2002
    Messaggi
    412

    Nomi utenti connessi

    Ciao ragazzi, ecco il mio problema:

    Sul mio sito utilizzavo il global.asa per conteggiare il numero degli utenti connessi. Poi ho voluto anche visualizzare il loro nome, modificando lo script (le parti in rosso sono quelle che ho inserito io):


    global.asa (nella root del sito):
    ----------------------------------------------------------------------

    <SCRIPT LANGUAGE="VBScript" RUNAT="Server">
    Sub Application_OnStart()
    Application("UtentiCollegati") = 0
    Application("Users") = ""
    End Sub

    Sub Application_OnEnd()
    Application("UtentiCollegati") = 0

    End Sub

    Sub Session_OnStart()
    Session.Timeout = 10
    Application.Lock
    Application("UtentiCollegati") = _
    Application("UtentiCollegati") + 1
    Application.UnLock
    End Sub

    Sub Session_OnEnd()
    Application.Lock
    Application("UtentiCollegati") = _
    Application("UtentiCollegati") - 1
    Application.UnLock

    Application.Lock
    Session("utente") = request.Cookies("www.eonline.it")("user")
    Application("Users") = Replace( Application("Users") ,Session("utente") & "|" ,"")
    Application.UnLock


    End Sub
    </SCRIPT>


    Poi nella pagina di login ho messo:
    ------------------------------------------------------------------

    if user = rs("nick") and pass = rs("pass") then
    Response.Cookies("www.eonline.it")("id") = rs("id")
    Response.Cookies("www.eonline.it")("user") = rs("nick")
    Response.Cookies("www.eonline.it")("avatar") = rs("avatar")
    Response.Cookies("www.eonline.it")("email") = rs("email")
    response.cookies("www.eonline.it").Expires = date() + 365
    response.cookies("www.eonline.it").Secure = false

    ' controllo utenti
    Session("utente") = rs("nick")
    if InStr(1, Application("Users"), Session("utente") & "|" ) = 0 then

    Application.Lock
    Application("Users") = Application("Users") & Session("utente") & "|"
    Application.UnLock

    end if


    ed in quella del logout:
    --------------------------------------------------------------

    <%
    Application.Lock
    Application("Users") = Replace( Application("Users") , Session("utente") & "|" ,"")
    Application.UnLock

    Response.Cookies("www.eonline.it")("user") = ""
    Response.Cookies("www.eonline.it")("id") = ""
    response.redirect "../index.asp"
    %>


    Ecco il problema:

    1) Credo di non essere riuscito ad assegnare i cookie, visto se il giorno successivo devo nuovamente logarmi.

    2) Vorrei che dopo un tot di minuti che l'utente è uscito dal sito, non compaia più il suo nome tra gli utenti connessi. Infatti il loro nome continua ad essere presente anche quando il contatore mi segnala che c'è un solo visitatore (cioè io!!). Premesso che ho rinunciato all'idea di far cancellare i loro nomi alla chiusura del browser (ho visto uno script in tal senso, ma non ci ho capito molto!), mi servirebbe qualcosa del tipo:

    Session.Timeout = 10

    ma non so dove inserirlo.....

    grazie

  2. #2
    Utente di HTML.it L'avatar di digitm
    Registrato dal
    May 2002
    Messaggi
    412
    nessuno???

  3. #3
    Utente di HTML.it L'avatar di digitm
    Registrato dal
    May 2002
    Messaggi
    412

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    90
    ho il medesimo problema nessusso ci aiuta?

  5. #5
    Visto che non ho voglia di smazzarmi quelle righe di codice rispondo solamente al punto 2 :

    La soluzione mi gliore per il timeout è di includere il comando

    session.timeout = 10

    All'interno di un file .asp , per esempio : params.asp

    A questo punto , IN OGNI PAGINA ASP DEL TUO PORTALE , includi il file in questo modo :



    In questo modo hai un file include che ti permette di render disponibile dei parametri in tutto il sito . . .


  6. #6
    Io ho usato un altro metodo al posto delle Application, che mi davano il tuo stesso problema, in fase di "sgancio" del nick dopo essere scaduto il timeout, è devo dire che è abbastanza performante e veloce, ma richiede l'uso del Db!
    Se t'interessa fammi sapere!!!
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    90
    certo che si fammi sapere

  8. #8
    Raga , ma così vi complicate la vita

    Ogni volta che un utente si collega , concatenate ad una variabile Application il nome dell'utente loggato

    per esempio in questo modo : dario*tu*lui*lei

    Poi in ogni pagina richiamate una funzione custom che splitta la stringa in un array e lo stampa a video a vostro piacimento . . .

    Il DB è bene evitarlo quando non serve :rollo:

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    90
    scusa ma sono di coccio ti dispiace scrivere due righe di codice non sono esperto

  10. #10
    Originariamente inviato da DarioN1
    Raga , ma così vi complicate la vita

    Ogni volta che un utente si collega , concatenate ad una variabile Application il nome dell'utente loggato

    per esempio in questo modo : dario*tu*lui*lei

    Poi in ogni pagina richiamate una funzione custom che splitta la stringa in un array e lo stampa a video a vostro piacimento . . .

    Il DB è bene evitarlo quando non serve :rollo:
    Beh mi spiace smentirti ma io prima di passare al db ho fatto quanto da te scritto e non ho risolto il problema, o meglio non ho risolto il problema di sganciare il nick (cosa che tra l'altro tu nel mio quote, non mensioni, quindi non è chiaro se sai come ovviare, mediante le Application..).
    Da quando ho usato il DB tutto ha funzionato perfettamente.

    @michelet se t'interessa il mio schema, mandami un pvt.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

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.