Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684

    assegnare ad un array una variabile di sessione

    Sto studiando il comportamento e la creazione degli array, per questo ho realizzato un semplice script, ma ricevo errore.
    ecco il codice:
    codice:
    <form method="post">
      
    
    NOME 
        <input type="text" name="NOME">
      </p>
      
    
    COGNOME 
        <input type="text" name="COGNOME">
      </p>
      
    
    
        <input type="submit" name="Submit" value="Invia">
      </p>
    </form>
    
    <%
    dim contenuto()
    
    session("dati")= Request.Form("nome") & "," & Request.Form("cognome")
    'Response.Write session("dati")
    
    contenuto = 0
    contenuto = session("dati")
    'IF isArray(contenuto) THEN
    	FOR i = 0 TO UBOUND(contenuto)
    	Response.Write (contenuto(i) & "
    ")
    	NEXT
    'END IF
    %>
    L'errore e' sulla riga:
    contenuto = session("dati")
    che ho sostituito con:
    contenuto = split(session("dati"),",")

    Ma ricevo sempre errore, tipo di dati non corrispondente...
    ho creato una session incompatibile con l'array?

  2. #2
    se metti così ti da ancora errore?

    contenuto = int(session("dati"))

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    si sempre: tipo di dati non corrispondente.

    ho cambiato il codice cosi':
    [CODE]
    <form method="post">


    NOME
    <input type="text" name="NOME">
    </p>


    COGNOME
    <input type="text" name="COGNOME">
    </p>



    <input type="submit" name="Submit" value="Invia">
    </p>
    </form>

    <%
    dim contenuto

    session("dati")= Request.Form("nome") & Request.Form("cognome")
    'Response.Write session("dati")

    esempio = session("dati")
    'response.write esempio

    contenuto = 0
    contenuto = split(esempio,",")

    FOR i = 0 TO UBOUND(contenuto)
    Response.Write (contenuto(i) & "
    ")
    NEXT
    %>

    Ora funziona, ho eliminato dall'inizializzazione della varibaile CONTENUTO le due parentesi:
    Prima: dim contenuto()
    ORA: dim contenuto

    VA. ma non mi divide il nome dal cognome!!!

  4. #4
    ah non l'avevo visto... ti dico subito che all'array devi per forza dare una grandezza non puoi dimensionarlo senza non dargli un numero tra le parentesi

    dim contenuto(10)

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    OK. Ora va...

    form...
    /form

    <%
    dim contenuto
    session("dati")= Request.Form("nome") & "," & Request.Form("cognome")

    contenuto = split(session("dati"),",")

    FOR i = 0 TO UBOUND(contenuto)
    Response.Write contenuto(i) & "
    "
    NEXT
    %>

    divide il nome dal cognome.

    p.s. ho letto che per maneggiare gli array conviene assegnare prima una stringa "normale" alla session e creare un array prendendo il valore dalla stringa. E' vero?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    in questo caso ho solo fatto: dim contenuto
    Come faccio a dargli una grandezza se non so cosa contiene...

    esempio: carico da un database tot record, l'utente ne seleziona "tot" devo lasciare "aperta" la dimensione?

    e' sbagliato inizializzare l'array senza dargli una dimensione?

  7. #7
    p.s. ho letto che per maneggiare gli array conviene assegnare prima una stringa "normale" alla session e creare un array prendendo il valore dalla stringa. E' vero?
    non credo non l'ho mai sentita :master:

    e' sbagliato inizializzare l'array senza dargli una dimensione?
    da quanto so io ad asp non piace un array senza dimensione... cmq in questo caso la dimensione gliela da lo split quindi dim contenuto per me é inutile

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.