68 messaggi dal 28 settembre 2004
Ho una pagina asp con la quale aggiungo dei record ad un db.
Praticamente visualizzo sotto la pagina in questione, due campi a discesa dove seleziono i dati che mi servono e due caselle di testo dove inserico altri dati. Premendo il tasto AGGIUNGI, aggiorno la tabella che mi interessa e visualizzo in alto alla stessa pagina il record appena inserito.
La questione è questa:
Le due caselle a discesa prendono i dati da una diversa tabella che è composta da questi campi:
Tipo
Modello
Calibro
Peso.
Allora nella prima casella a discesa visualizzo il Tipo, nella seconda visualizzo il Modello.
Ma se nella prima è giusto che io veda l'elenco di tutti i materiali,
come posso fare perchè nella seconda veda solo il Modello o i modelli relativi al TIPO scelto nella prima casella a discesa?
Vorrei anche che una volta scelto il tipo ed il modello, nelle due caselle di testo mi appaia automaticamente il relativo calibro ed il peso.
Come fare?

cerimapd
394 messaggi dal 11 agosto 2004
ad ogni cambio di "Tipo" ti passi un parametro che ti servirà per una sql da aprire per selezionare i "Modelli" che ti interessano e così via..
68 messaggi dal 28 settembre 2004
Potresti farmi gentilmente un piccolo esempio perchè io possa interpretarlo e adattarlo al mio script?
Grazie

cerimapd
394 messaggi dal 11 agosto 2004
<form action="" metod="post">
<select name="" onchange="this.form.submit()"> >
<option value="">bla bla
</select>
</form>

e ti recuperi il vbalore per fare un nuovo select ad esempio
68 messaggi dal 28 settembre 2004
Ho provato a fare quello che mi hai consigliato ma non riesco a vedere risultati!!

Ho estrapolato una parte dello script in questione:

---------------------------------------------------------------------------
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Tipo</title>
</head>

<body>

<b>
<div align="center">
<table border="0" width="100" id="table1" style="border-collapse: collapse">
<tr>
<td align="center" style="border-style: solid; border-width: 1px">
<p align="center"><b> <font size="1" face="Verdana">Tipo</font></td>
<td align="center" style="border-style: solid; border-width: 1px"><b> <font size="1" face="Verdana">
Modello</font></td>
<td align="center" style="border-style: solid; border-width: 1px"><b> <font size="1">
<span style="background-color: #FFFFFF">
<font face="Verdana"> Calibro</font></span></font></td>
<td align="center" style="border-style: solid; border-width: 1px">
<span style="background-color: #FFFFFF"><b>
<font face="Verdana" size="1">Peso</font></b></span></td>
<td align="center" style="border-style: solid; border-width: 1px">
&nbsp;</td>
</tr>
<tr>
<td align="center" style="border-style: solid; border-width: 1px">
<b> <font size="1">
<span style="background-color: #FFFFFF">
<form action="" method ="post">
<p>
<select name="msg" style="font-family: Verdana; font-size: 8pt" size="1">
<option selected value="----">---</option>
<%
set objconn=Server.CreateObject("ADODB.Connection")
objconn.ConnectionString="DRIVER={Microsoft Access Driver (*.mdb)};"&"dbq="& server.MapPath("2007.mdb")&";PWD=sa"

objconn.open
stringaSQL="SELECT * from materiali_e_peso"
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open StringaSQL,objconn
do while not rs.EOF
%>
<option><%=rs("denominaz")%></option>
<%
rs.MoveNext
loop
%></select></span></font></p>
</td>


<td align="center" style="border-style: solid; border-width: 1px">
<b>
<font size="1">
<span style="background-color: #FFFFFF">
<form action="" method ="">
<p>
<select name="autore" style="font-family: Verdana; font-size: 8pt" size="1">
<option selected value="----">---</option>
<%
set objconn=Server.CreateObject("ADODB.Connection")
objconn.ConnectionString="DRIVER={Microsoft Access Driver (*.mdb)};"&"dbq="& server.MapPath("2007.mdb")&";PWD=sa"

objconn.open
stringaSQL="SELECT * from materiali_e_peso"
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open StringaSQL,objconn
do while not rs.EOF
%>
<option><%=rs("tipo_mod")%></option>
<%
rs.MoveNext
loop
%></select></span></font></p>
</td>
<td align="center" style="border-style: solid; border-width: 1px"><b> <font size="1">
<span style="background-color: #FFFFFF">
<input type="text" name="calibro" size="7" style="font-family: Verdana; font-size: 8pt; text-align:center"></span></font></td>
<td align="center" style="border-style: solid; border-width: 1px"><b> <font size="1">
<span style="background-color: #FFFFFF">
<input type="text" name="peso_acc" size="9" style="font-family: Verdana; font-size: 8pt; text-align:center"></span></font></td>
<td align="center" style="border-style: solid; border-width: 1px">
<b>
<input type="submit" value="Aggiungi" style="font-family: Verdana; font-size: 8pt"></td>
</tr>
</table>
</div>

</b>

</body>

</html>

-------------------------------------------------------------------------

Mi sembra quasi impossibile non poter salvare in una "Session" il dato selezionato nella prima casella di riepilogo a discesa e successivamente applicarla nella seconda come nell'esempio:

objconn.open
stringaSQL="SELECT * from materiali_e_peso1 where denominaz =" Session...ecc
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open StringaSQL,objconn

--------------------------------------------------------------------------
Se tutto questo è possibile dove sbaglio?

cerimapd
394 messaggi dal 11 agosto 2004
Spero sia tutto chiaro. Cmq non avevi inserito il codice Onchange che ti avevo suggerito.

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Tipo</title>
</head>

<body>

<b>
<div align="center">

<table border="0" width="100" id="table1" style="border-collapse: collapse">
<tr>
<td align="center" style="border-style: solid; border-width: 1px">
<p align="center"><b> <font size="1" face="Verdana">Tipo</font></td>
<td align="center" style="border-style: solid; border-width: 1px"><b> <font size="1" face="Verdana">
Modello</font></td>
<td align="center" style="border-style: solid; border-width: 1px"><b> <font size="1">
<span style="background-color: #FFFFFF">
<font face="Verdana"> Calibro</font></span></font></td>
<td align="center" style="border-style: solid; border-width: 1px">
<span style="background-color: #FFFFFF"><b>
<font face="Verdana" size="1">Peso</font></b></span></td>
<td align="center" style="border-style: solid; border-width: 1px">
&nbsp;</td>
</tr>

<tr>
<td align="center" style="border-style: solid; border-width: 1px">
<b> <font size="1">
<span style="background-color: #FFFFFF">
<form action="" method ="post">
<p>
<select onchange="this.form.submit()" name="msg" style="font-family: Verdana; font-size: 8pt" size="1">
<option selected value="----">---</option>
<%
set objconn=Server.CreateObject("ADODB.Connection")
objconn.ConnectionString="DRIVER={Microsoft Access Driver (*.mdb)};"&"dbq="& server.MapPath("2007.mdb")&";PWD=sa"
objconn.open
stringaSQL="SELECT * from materiali_e_peso"
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open StringaSQL,objconn
do while not rs.EOF
%>
<option <%If request.Form("msg")=rs("denominaz") Then response.write " selected " End If%> value="<%=rs("denominaz")%>"><%=rs("denominaz")%></option>
<%
rs.MoveNext
loop
%>
</select></span></font></p>
</td>

<td align="center" style="border-style: solid; border-width: 1px">
<b>
<font size="1">
<span style="background-color: #FFFFFF">
<form action="" method ="">
<input type="hidden" name="msg" value="<%=request.Form("msg")%>">
<p>
<select onchange="this.form.submit()" name="autore" style="font-family: Verdana; font-size: 8pt" size="1">
<option selected value="----">---</option>
<%If request.Form("msg") <> "" Then

set objconn=Server.CreateObject("ADODB.Connection")
objconn.ConnectionString="DRIVER={Microsoft Access Driver (*.mdb)};"&"dbq="& server.MapPath("2007.mdb")&";PWD=sa"

objconn.open
stringaSQL="SELECT * from materiali_e_peso where campo='" & request.Form("msg") & "'"
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open StringaSQL,objconn
do while not rs.EOF
%>
<option <%If request.Form("autore")=rs("tipo_mod") Then response.write " selected " End If%> value="<%=rs("tipo_mod")%>"><%=rs("tipo_mod")%></option>
<%
rs.MoveNext
loop
End If%></select></span></font></p>
</td>
<td align="center" style="border-style: solid; border-width: 1px"><b> <font size="1">
<span style="background-color: #FFFFFF">
<input type="text" name="calibro" size="7" style="font-family: Verdana; font-size: 8pt; text-align:center"></span></font></td>
<td align="center" style="border-style: solid; border-width: 1px"><b> <font size="1">
<span style="background-color: #FFFFFF">
<input type="text" name="peso_acc" size="9" style="font-family: Verdana; font-size: 8pt; text-align:center"></span></font></td>
<td align="center" style="border-style: solid; border-width: 1px">
<b>
<input type="submit" value="Aggiungi" style="font-family: Verdana; font-size: 8pt"></td>
</tr>
</table>

</div>

</b>

</body>

</html>
68 messaggi dal 28 settembre 2004
Grazie per l'aiuto!
Ho provato lo script e inizialmente non funzionava.
Ho scoperto che c'era questa stringa di troppo:
<input type="hidden" name="msg" value="<%=request.Form("msg")%>">
Eliminata questa tutto ha funzionato.

Ma il problema è risolto in parte!!

Se ricordi ho anche le due caselle di testo CALIBRO e PESO_ACC dove, una volta scelto il tipo ed il modello, dovrebbero apparire i rispettivi dati.

Scusami. Una volta risolto questo non ti disturberò più. Grazie.

cerimapd
394 messaggi dal 11 agosto 2004
beh insomma ci sono andato vicino allora! :)

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.