Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 44

Discussione: asp e form dinamici

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    43

    asp e form dinamici

    Ciao a tutti,
    devo realizzare un combo in cui i dati del primo modulo vengono reperiti da un database mentre quelli del secondo, reperiti anch'essi da un database, dipendono dalla voce selezionata nel primo.
    Ho realizzato due form che eseguono il submit alla stessa pagina in cui si trova il form.Se eseguo il form con metodo get non ho problemi, mentre con post non vengono passati i valori (ossia eseguendo un response.write(request.form(nome option)) non ho niente), perché?
    Inoltre come impostare a selected l'opzione scelta nel primo modulo nel momento in cui la pagina viene ricaricata dopo il primo submit?

  2. #2
    Utente di HTML.it L'avatar di Umanista
    Registrato dal
    Jan 2002
    Messaggi
    1,022

    Re: asp e form dinamici

    Originariamente inviato da zino
    Ciao a tutti,
    devo realizzare un combo in cui i dati del primo modulo vengono reperiti da un database mentre quelli del secondo, reperiti anch'essi da un database, dipendono dalla voce selezionata nel primo.
    Ho realizzato due form che eseguono il submit alla stessa pagina in cui si trova il form.Se eseguo il form con metodo get non ho problemi, mentre con post non vengono passati i valori (ossia eseguendo un response.write(request.form(nome option)) non ho niente), perché?
    Inoltre come impostare a selected l'opzione scelta nel primo modulo nel momento in cui la pagina viene ricaricata dopo il primo submit?
    Qui trovi suggerimenti per per le combo dinamiche
    http://forum.html.it/forum/showthrea...hreadid=855322

    poi sulla guida freeasp puoi trovare indicazioni sulla differenza tra post / get e Request.Form / Request.QueryString


  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    43
    grazie, adesso vedo, provo e ti dico

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    43
    ho lo stesso problema di prima:anche nella discussione che mi hai indicato i valori vengono passati nella url (cosa che non voglio), inoltre sussiste il problema della voce selezionata nel primo modulo che viene resettata.
    Altra domanda: se voglio passare i valori del secondo modulo ad un terzo come faccio?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    43
    Per quanto riguarda la voce resettata al ricaricare la pagina, ho provato con un "if":se nella request.querystring non c'é niente, allora carica un valore di default tipo "selezionare" altrimenti carica come valore selezionato il valore restituito da request.querystring stesso. Il procedimento peró non funziona.
    Per quanto riguarda il submit del secondo modulo, invece, non riesco ad effettuarlo; ho scritto il codice come nel primo form, ma non in esecuzione non ricarica neanche la pagina. Ricordo che i valori del primo modulo mi servono per creare il secondo menú a tendina ed il valore scelto in quest'ultimo determina le opzioni del terzo. Il valore finale del terzo ed il contenuto di una text area successiva andranno inseriti in una tabella di un database.
    Come faccio???

  6. #6
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    + o - così, prendi spunto:


    codice:
    <%
    Dim p
    'apro connessione DB
    
    opzione1=request.form("opzione1")
    opzione2=request.form("opzione2")
    
    sql="SELECT id,opzione1 FROM Tbl_opzione1 "
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, connDB ,0,1
    if not rs.eof then
    p="<select name='opzione1' onchange='form_dati.submit()'>"
    p=p&"<option value=''>seleziona ...</option>"
    do while not rs.eof
    
    p=p&"<option value='"&rs("id")&"'"
    if opzione1<>"" then
    if CInt(opzione1)=Cint(rs("id")) then
    p=p&" selected"
    end if
    end if
    p=p&">"&Trim(rs("opzione1"))&"</option>"
    
    rs.movenext
    loop
    p=p&"</select>"
    end if
    rs.close()
    Set rs=Nothing
    
    if opzione1<>"" then
    sql="SELECT id,opzione2 FROM Tbl_opzione2 WHERE Rif_opzione1="&opzione1
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, connDB ,0,1
    if not rs.eof then
    p=p&"<select name='opzione2' onchange='form_dati.submit()'>"
    p=p&"<option value=''>seleziona ...</option>"
    do while not rs.eof
    
    p=p&"<option value='"&rs("id")&"'"
    if opzione2<>"" then
    if CInt(opzione2)=Cint(rs("id")) then
    p=p&" selected"
    end if
    end if
    p=p&">"&Trim(rs("opzione2"))&"</option>"
    
    rs.movenext
    loop
    p=p&"</select>"
    end if
    rs.close()
    Set rs=Nothing	
    end if
    
    'chiudo connessione DB
    %>
    
    <html>
    <head>
    <title>Untitled</title>
    </head>
    <body>
    <form name='form_dati' METHOD='POST'>
    <%=p%>
    </form>
    </body>
    </html>

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    43
    grazie, proveró, poi faccio sapere.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    43
    che cos'é CInt nel codice che mi hai proposto?

  9. #9
    Utente di HTML.it L'avatar di Galex
    Registrato dal
    Aug 2002
    Messaggi
    667
    converte il valore in un intero, nel mio esempio il campo ID di entrambe le tabelle è un contatore.se tu come campo chiave non vuoi usare un campo contatore o nn numerico allora togli Cint,l'importante è che quando confronti la chiave del record e il valore selezionato siano dati dello stesso tipo

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    43
    mi da' un errore su questa linea
    p=p&"<option value='"&rs("id")&"'"
    perché non riconosce l'end of statement (la chiusura > presumo)

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.