[ASP] passaggio parametri form metodo post

franciros

Nuovo Utente
29 Ott 2006
28
0
1
Buonasera, la mia situazione è questa:

da una sql seleziono due parametri

sql="SELECT ID,nome FROM totnome ORDER BY nome"

I nomi estratti vengono elencati in form. Selezionando un nome ho bisogno di passare ad una altra pagina asp sia il nome selezionato che l'ID. Il codice che uso per selezionare e passare i parametri è questo:
Codice:
<form action="nomi.asp" method="post" name="form"  id="form">
    
        <select name="nome" size="10" id="nome"  class="messaggio" onChange="invia();">
        
<%
While Not rs.EOF%>
          <option><%= rs("nome")%></option>
          <%rs.MoveNext
Wend%>

cosi com'è passa solo la variabile nome. Ho bisogno di passare anche l'ID...come faccio?
Grazie

F
 
Ultima modifica di un moderatore:
potresti creare la stringa con i due valori, tipo
rs("ID") & "|" & rs("nome")
il "separatore" aiuta a riprendere i due valori
 
Passa i valore tramite Query.String:
Codice:
<select name="nome" size="10" id="nome" class="messaggio" onchange="if (this.value) window.location.href=this.value">
<%
   While Not rs.EOF
%>
    <option value="pagina.asp?nome=<%= rs("nome")%>&id=<%= rs("id")%>"><%= rs("nome")%></option>
<%
   rs.MoveNext
   Wend
%>
</select>
Se questo non è possibile valuta il suggerimento di marino51, mi sa che sia l'unico modo, ogni "option" può passare una sola variabile/valore.
 
Se provassi con un ciclo IF all'interno di:
Codice:
<%
While Not rs.EOF%>
<option><%= rs("nome")%></option>
<%rs.MoveNext
Wend%>
per cercare di intercettare il valore dell'ID?

Ho provato la procedura di martino51, ma ovviamente la stringa mi viene per intero dentro l'elenco per la selezione (id+nome) e non soddisfa però la mia esigenza in quanto viene passata come unico parametro, giustamente
 
Ultima modifica di un moderatore:
...se usi il metodo di marino51 devi usare la funzione split per recuperare le due variabili.
Sbircia qua: https://www.w3schools.com/asp/func_split.asp

io utilizzo sempre la funzione split con separatore ";" punto e virgola e non ho mai avuto problemi..
metti i due valori nel value separati da punto e virgola e poi crei un arrai di due elementi con la funzione split
Codice:
dim campo
campo = split(campo,";")
campo(0) vale il primo elem.
campo(1) il secondo...

per sapere quenti elementi crea lo split usi 
la funzione Ubound(campo) che ti da il numero di elementi presenti nell'array
ciao
 
@franciros
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code-gif.6007
o il tag
php-png.6009
per il PHP, quando posti del codice, oppure la funzione codice dalla barra degli strumenti
box-inserisci-2-png-jpg.6008

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Per questa volta te lo sistemo io ma mi raccomando per il futuro
 

Discussioni simili