Ciao a tutti.
Ho una tabella access così strutturata:
Tramite delle select dinamiche e delle query faccio in modo che selezionando dalla prima select LOC , si popola la seconda select con estrazione del NOME_ATTIVITA , selezionato il NOME_ATTIVITA si popola la terza select MATR .codice:ID MATR LOC NOME_ATTIVITA DATA_PIANIFICATA 234 80850121 ROMA Controlli 01/02/2006 235 80850123 ROMA Controlli 01/03/2006 236 80997182 ROMA Controlli 1 01/06/2006
Supponiamo di selezionare dalla select LOC il valore "ROMA", la seconda select NOME_ATTIVITA si popola con il valore "Controlli", selezioniamo "Controlli" dalla select NOME_ATTIVITA e la terza select MATR non si popola con la rispettiva MATR .
Sapete dirmi dove sbaglio? Eccovi il codice:
codice:' PRIMA QUERY PER PRIMA SELECT LOC strSql = "SELECT LOC FROM Tab GROUP BY LOC ORDER BY LOC ASC" Set objRs = Server.CreateObject("ADODB.Recordset") objRs.Open strSql, Cn, 3, 3 %> <select size="1" name="LOC" onChange="window.document.location='PAGE.asp?LOC='+this.options[this.selectedIndex].value+';"> <% LOC_SEL = request.querystring("LOC") %> <option value="<%=LOC_SEL%>"><%=LOC_SEL%></option> <% If Not objRs.EOF Then Do While Not objRs.EOF %> <option value= "<% = Trim(objRs("LOC")) %>"><% = Trim(objRs("LOC")) %></option> <% objRs.MoveNext Loop End If objRs.Close %> </select> <% LOC = request("LOC") ' SECONDA QUERY PER SECONDA SELECT NOME_ATTIVITA strSql = "SELECT NOME_ATTIVITA FROM Tab WHERE LOC = '"&LOC&"' GROUP BY NOME_ATTIVITA ORDER BY NOME_ATTIVITA ASC" objRs.Open strSql, Cn, 3, 3 %> <select name="nome_attivita" onChange="window.document.location='PAGE.asp?nome_attivita='+this.options[this.selectedIndex].value+';"> <% attivita_sel = request.querystring("nome_attivita") %> <option value="<%=attivita_sel%>"><%=attivita_sel%></option> <% If Not objRs.EOF Then Do While Not objRs.EOF %> <option value= "<% = pulisci(left(objRs("NOME_ATTIVITA"),50)) %>"><% = left(objRs("NOME_ATTIVITA"),50) %></option> <% objRs.MoveNext Loop End If objRs.Close %> </select> <% NOME_ATTIVITA = request("NOME_ATTIVITA") ' TERZA QUERY PER TERZA SELECT MATR strSql = "SELECT MATR FROM Tab WHERE NOME_ATTIVITA = '"&NOME_ATTIVITA&"' AND LOC = '"&LOC&"' GROUP BY MATR ORDER BY MATR ASC" objRs.Open strSql, Cn, 3, 3 %> <select name="MATR"> <option value="0">---</option> <% If Not objRs.EOF Then Do While Not objRs.EOF %> <option value= "<% = objRs("MATR") %>"><% = objRs("MATR") %></option> <% objRs.MoveNext Loop End If objRs.Close %> </select>

Rispondi quotando
