Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Session e array

  1. #1

    Session e array

    Ciao....

    un aiutino

    ho questo gloabal.asa
    codice:
    <script language="JScript" runat="Server">
     function Application_OnStart() {
        // Imposta a zero il contatore quando non ci sono utenti connessi
        Application("users") = 0;
     }
     function Session_OnStart() {
        // Incrementa di un'unità il contatore per ogni utente connesso
        Application("users") += 1;
    	Session.TimeOut = 2
    	Session("dadove")=String(Request.ServerVariables("REMOTE_ADDR"));
    	Session("dahost")=String(Request.ServerVariables("REMOTE_HOST"));
    	Session("daserver")=String(Request.ServerVariables("server_name"));
    	Session("dabrow")=String(Request.ServerVariables("http_user_agent"));
    	Session("id")=String(Session.SessionID);
     }
     function Session_OnEnd() {
        // Decrementa di un'unità il contatore ad ogni disconnessione
        Application("users") -= 1;
     }
    </script>

    vorre richiamare in una pagina di controllo tutti gli ip degli utenti collegati in quel momento... cioè vedere l'array si session("da dove")

    codice:
    ...............
    
    lista=Session("dadove");
    
    ...............
    <% 
    for (i = 0; i<=ubound(lista);i++)
    {
     %> 
    <tr> 
    <td>IP CONNESSO:</td> 
    <td><%=lista[i] %></td> 
    </tr> 
    <%
    }
    %>



    dove sbaglio????

    aiutino....

    grazie

    maxxl
    MEMENTO AUDERE SEMPER
    Maxxl

    www.maxxl.it

  2. #2
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    E' uno script con tanti problemi.
    Per salvare gli ip di tutti gli utenti conessi devi usare una variabile Application, ma sopratutto devi creare un array.Che ne dici? se non crei l'array come fai a pensare che ci sia un array nella sessione? Magia?

    Altra cosa, devi cancellare il valore se l'utente se ne va.

    Ultima cosa, non usare gli array è più facile con una stringa (ehehe)

    Allora, credo sia anche sbagliata l'assegnazione String(valore) ma questo lo devo verificare. Intanto.

    codice:
    <script language="JScript" runat="Server">
     function Application_OnStart() {
        // Imposta a zero il contatore quando non ci sono utenti connessi
        Application("users") = 0;
    	Application("dadove") = "";
     }
     function Session_OnStart() {
        // Incrementa di un'unità il contatore per ogni utente connesso
        Application("users") += 1;
    	Session.TimeOut = 2
    	var ip = new String(Request.ServerVariables("REMOTE_ADDR"));
    	Application("dadove") += ip + ";"
    	Session("dadove")=ip
    	Session("dahost")=new String(Request.ServerVariables("REMOTE_HOST"));
    	Session("daserver")=new String(Request.ServerVariables("server_name"));
    	Session("dabrow")=new String(Request.ServerVariables("http_user_agent"));
    	Session("id")=new String(Session.SessionID);
     }
     function Session_OnEnd() {
        // Decrementa di un'unità il contatore ad ogni disconnessione
        Application("users") -= 1;
    	// Manca la cencellazione dell'utente dalla lista
     }
    </script>
    La visualizzazione

    codice:
    <% 
    lista=new String(Application("dadove")).split(";");
    for (i = 0; i<=ubound(lista);i++)
    {
     %> 
    <tr> 
    <td>IP CONNESSO:</td> 
    <td><%=lista[i] %></td> 
    </tr> 
    <%
    }
    %>
    NB: Il punto e virgola non è obbligatorio in javascript

  3. #3
    Grazie per l'intervento molto chiaro...

    Una domanda...usando session non creo comunque un array???
    MEMENTO AUDERE SEMPER
    Maxxl

    www.maxxl.it

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    No, la session non è un array.
    E comunque non concatenavi il valore.

    Roby

  5. #5
    prima di postare la domanda ho provato a cercare nel forum ed ho tovato questo

    http://forum.html.it/forum/showthrea...ghlight=ubound

    mi sembra che session sia trattato come un array.. o mi sbaglio?
    MEMENTO AUDERE SEMPER
    Maxxl

    www.maxxl.it

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Come descritto chiaramente da optime, in session puoi mettere ANCHE un array ma di default non lo è.

    Roby

  7. #7
    grazie per la delucidazione,,,
    quindi se ho ben capito posso mettere un array in session ma lui non memorizza i dati in un array nel global.asa....

    ma se faccio così???

    <%

    Response.Write "Sono nella seconda pagina!

    "

    SecondArray=Session("mioArray")

    Redim Preserve SecondArray(4)
    SecondArray(4) = "extra"

    For i = LBound(SecondArray) to UBound(SecondArray)
    Response.Write "L'elemento " & i & " contiene...: " & SecondArray(i)
    Response.Write "
    "
    Next

    Response.Write "
    Torna alla prima pagina"

    %>



    MAXXL
    MEMENTO AUDERE SEMPER
    Maxxl

    www.maxxl.it

  8. #8
    sono uno stupido... ora ho capito... ciaoooooooooooooooooooo
    MEMENTO AUDERE SEMPER
    Maxxl

    www.maxxl.it

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.