innanzitutto grazie! Roby sei sempre disponibile!
ho fatto così:
codice:
<select name="localita" onchange="window.location.href='annunci.asp?zona='+this.value;">
<option value="" >Tutte</option>
<%
dim rsLocalita, sqlLocalita,zona
zona = request.QueryString("zona") -------> la inizializzo qui sennò non riceve nessun valore
set rsLocalita = server.CreateObject("ADODB.recordset")
sqlLocalita = "SELECT * FROM Localita"
rsLocalita.open sqlLocalita, objConn
%>
<option value="<%= rsLocalita("localita")%>"<%if rsLocalita("localita") = zona then%> selected<%end if%>><%= rsLocalita("localita")%></option>
<% DO UNTIL rsLocalita.eof %>
<option value="<%= rsLocalita("localita")%>"><%= rsLocalita("localita")%></option>
<%
rsLocalita.movenext
loop
%>
</select>
<select name="quartieri">
<option value="tutti" >Tutti</option>
<%
'dim zona
'zona = request.QueryString("zona") -----> qui ho remmato, zona me lo ricavo prima a questo punto
if zona <> "" then
dim rs1, sql1
set rs1 = server.CreateObject("ADODB.recordset")
sql1 = "SELECT Quartieri.* FROM Localita INNER JOIN Quartieri ON Localita.ID = Quartieri.id_localita Where Localita.localita = '" & zona & "'"
%>
<% DO UNTIL rs1.eof %>
<option value="<%= rs1("quartiere")%>"><%= rs1("quartiere")%></option>
<%
rs1.movenext
loop
%>
<% else
dim rs2,sql2
set rs2 = server.CreateObject("ADODB.recordset")
sql2 = "SELECT * FROM Quartieri"
rs2.open sql2, objConn
%>
<% DO UNTIL rs2.eof %>
<option value="<%= rs2("quartiere")%>"><%= rs2("quartiere")%></option>
<%
rs2.movenext
loop
%>
<% end if %>
Non cambia nulla, tranne per il fatto che una option - la prima - me la scrive due volte..