Non ho capito bene la storia del 21...me la potresti spiegare?
Perchè sin ora la sezione speciale ha avuto il numero 23 nel db?
E se lo volessi applicare ad una scritta (link nel testo)???
Non ho capito bene la storia del 21...me la potresti spiegare?
Perchè sin ora la sezione speciale ha avuto il numero 23 nel db?
E se lo volessi applicare ad una scritta (link nel testo)???
23 è il valore che hai dato tu all'option speciale.
Ma via javascript puoi dire semplicemente di selezionare l'n-esimo elemento della select.codice:<select name="zonarichiesta" size="1" onchange="ZonaChange(this);"> <option value="0">qualsiasi zona</option> <option value="-1">-------- LAZIO ----------</option> <option value="9">giardinetti</option> <option value="16">colleprenestino</option> <option value="4">torre angela/torrenova</option> <option value="3">finocchio</option> <option value="15">borghesiana</option> <option value="6">castelverde/lunghezza</option> <option value="21">gianicolense</option> <option value="10">villanova di guidonia</option> <option value="14">frascati</option> <option value="-1">-------- CAMPANIA----------</option> <option value="20">battipaglia 1</option> <option value="-1">-------- TOSCANA ----------</option> <option value="13">prato est</option> <option value="19">prato ovest</option> <option value="-1">-------- PUGLIA ----------</option> <option value="18">foggia</option> <option value="-1">-------- VENETO ----------</option> <option value="22">treviso</option> <option value="-1">-------- SPECIALE --------</option> <option value="23">speciale turistico</option> </select>
Se tu hai una select del tipo.
Se vuoi selezionare l'elemento con value="c" devi scriverecodice:<select name="prova"> <option value="a">elemento con indice 0</option> <option value="b">elemento con indice 1</option> <option value="c">elemento con indice 2</option> <option value="d">elemento con indice 3</option> </select>
this.form.prova.selectedIndex=2;
perché accedi alla select con l'indice dell'elemento.
Se vuoi accedere via value (mettiamo che non sai in che posizione è il tuo elemento) devi fare un ciclo cercando l'elemento con value="c", vedere in che posizione si trova e poi selezionarlo sempre come scritto prima:
this.form.prova.selectedIndex=posizione trovata (che sarà = 2)
Chiaro?
- "E' un messaggio. E' di Svarion, della terra di Merdor!"
- "Busto Arsizio?"
- "Terrazzo, sgabello, formaggio. Borraccia blu, ca**o di gomma e... CANNUCCIA!"
- "Ca**o dici? C'è scritto «frocio chi legge»!"
Mi era sfuggita questa richiesta, se vuoi un link diventa così:Originariamente inviato da kikysc
E se lo volessi applicare ad una scritta (link nel testo)???
codice:Speciale![]()
- "E' un messaggio. E' di Svarion, della terra di Merdor!"
- "Busto Arsizio?"
- "Terrazzo, sgabello, formaggio. Borraccia blu, ca**o di gomma e... CANNUCCIA!"
- "Ca**o dici? C'è scritto «frocio chi legge»!"
Ho variato l'asp, penso che qualcosa non vada come deve con il codice che mi hai dato, te lo posto qui di seguito:
codice:if Request.Form("zonarichiesta") = "-1" Then Response.Redirect("pag_err.htm") myDSN="PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};" myDSN=myDSN & "DBQ="&Server.MapPath("/data/xxxxxx.mdb")&";UID=administrator;PWD=;" 'Modificate per la gestione dell'assenza del campo motivazione (GV-2005-10-04) 'strWhere = " AND offerte.off_motivazione = " & Request.Form("motivazione") If Request.Form("motivazione") <> 0 then strWhere = " AND offerte.off_motivazione = " & Request.Form("motivazione") if Request.Form("zonarichiesta") <> 0 then strWhere = strWhere & " AND offerte.off_zona = " & Request.Form("zonarichiesta") 'Aggiunta per la gestione della zona speciale (GV-2005-10-04) if Request.Form("zonarichiesta") = 0 then strWhere = strWhere & " AND not(offerte.off_zona = 23) " If Request.Form("zonarichiesta") <> 23 Then 'Se si è scelto "speciale" non si aggiungono altre condizioni if Request.Form("tipologia") <> 0 then strWhere = strWhere & " AND off_tipologia = " & Request.Form("tipologia") if Request.Form("locali") <> 0 then strWhere = strWhere & " AND off_num_locali = " & Request.Form("locali") if Request.Form("prezzo") <> 0 then Select case Request.Form("prezzo") Case 1 strWhere = strWhere & " AND (off_prezzo > 0 AND off_prezzo <= 40000) " Case 2 strWhere = strWhere & " AND (off_prezzo > 40000 AND off_prezzo <= 60000) " Case 3 End Select End If End If ...
Se funziona con la scelta dalla select allora deve funzionare anche con il pulsante, la parte asp non c'entra.
Se hai cambiato la pagina con la select immagino che non vada, ma se quella pagina è uguale dovrebbe essere ok.
- "E' un messaggio. E' di Svarion, della terra di Merdor!"
- "Busto Arsizio?"
- "Terrazzo, sgabello, formaggio. Borraccia blu, ca**o di gomma e... CANNUCCIA!"
- "Ca**o dici? C'è scritto «frocio chi legge»!"
Non funziona mi da tutti i risultati tranne quello...!!!
Per questo che ti dicevo se l'asp c entra qlc perchè lì c'è il comando che limita la visualizzazione...!!!
Non ti sto più dietro continui a cambiare una pagina e chiedere perché l'altra non va più bene.
Posta la pagina con la select, il bottone e la funzione di invio (se riesci a isolarle posta solo queste due parti).
Posta la parte asp dove ci sono i controlli e la creazione della stringa sql.
Spiega chiaramente cosa vuoi fare e cosa non funziona.
Spiega anche se i value che hai inserito sono fissi (il famoso 23) o se potranno cambiare in futuro, da dove li prendi, li decidi tu?
- "E' un messaggio. E' di Svarion, della terra di Merdor!"
- "Busto Arsizio?"
- "Terrazzo, sgabello, formaggio. Borraccia blu, ca**o di gomma e... CANNUCCIA!"
- "Ca**o dici? C'è scritto «frocio chi legge»!"
Hai ragione, quel che serve qui è un bel corso...qualcuno si propone????
A parte gli scherzi posto il codice dell'htm:
codice:<td height="80"></td><td colspan="4" valign="top" bgcolor="#EDF5FE"> <form name="form1" method="post" action="risultato.asp"> <div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="Cognome" color="#000000"><font size="1">Seleziona la motivazione * </font></font> <select name="motivazione" size="1"> <option value="1">acquisto</option> <option value="2">affitto</option> </select> <font face="Verdana, Arial, Helvetica, sans-serif" size="Cognome" color="#000000"> </font><font face="Verdana, Arial, Helvetica, sans-serif" size="Cognome" color="#000000"><font face="Verdana, Arial, Helvetica, sans-serif" size="Cognome" color="#000000"><font face="Verdana, Arial, Helvetica, sans-serif" size="Cognome" color="#000000"><font face="Verdana, Arial, Helvetica, sans-serif" size="Cognome" color="#000000"><font face="Verdana, Arial, Helvetica, sans-serif" size="Cognome" color="#000000"><font size="1"></font></font></font></font></font> </font> </div></td> <td></td> </tr> <tr> <td height="100"></td> <td valign="top" bgcolor="#EDF5FE"> </font> <div align="right"> <div align="left"> <div align="center"> <div align="left"> <div align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#000000">Zona desiderata </font> <script> function ZonaChange(selZona) { var selValue = selZona.options[selZona.selectedIndex].value; if(selValue != -1) { if (selValue == 23) { selZona.form.motivazione.disabled = true; selZona.form.tipologia.disabled = true; selZona.form.locali.disabled = true; selZona.form.prezzo.disabled = true; } else { selZona.form.motivazione.disabled = false; selZona.form.tipologia.disabled = false; selZona.form.locali.disabled = false; selZona.form.prezzo.disabled = false; } } } </script> <select name="zonarichiesta" size="1" onchange="ZonaChange(this);"> <option value="0">qualsiasi zona</option> <option value="-1">-------- LAZIO ----------</option> <option value="9">giardinetti</option> <option value="16">colleprenestino</option> <option value="4">torre angela/torrenova</option> <option value="3">finocchio</option> <option value="15">borghesiana</option> <option value="6">castelverde/lunghezza</option> <option value="21">gianicolense</option> <option value="10">villanova di guidonia</option> <option value="14">frascati</option> <option value="-1">-------- CAMPANIA----------</option> <option value="20">battipaglia 1</option> <option value="-1">-------- TOSCANA ----------</option> <option value="13">prato est</option> <option value="19">prato ovest</option> <option value="-1">-------- PUGLIA ----------</option> <option value="18">foggia</option> <option value="-1">-------- VENETO ----------</option> <option value="22">treviso</option> <option value="-1">-------- SPECIALE --------</option> <option value="23">speciale turistico</option> </select> </div> </div> </div> </div> </div> </td> <td valign="top" bgcolor="#EDF5FE"> <div align="center"></div> <div align="left"></div> <div align="center"> <div align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#000000">Tipologia Immobile </font><font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#000000"> </font> <select name="tipologia" size="1"> <option value="1">appartamento</option> <option value="2">indipendente</option> <option value="3">rustico</option> <option value="4">villa</option> <option value="5">terreno</option> <option value="6">negozio</option> <option value="7">box</option> </select> </div> </div></td> <td valign="top" bgcolor="#EDF5FE"> <div align="center"> <font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#000000">Num. Locali </font> <select name="locali" size="1"> <option value="0">Qualsiasi</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </div></td> <td valign="top" bgcolor="#EDF5FE"> <div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#000000">Fascia prezzo * </font> <select name="prezzo" size="1"> <option value="1">da 0 a 40.000</option> <option value="2">da 41.000 a 60.000</option> <option value="3">da 61.000 a 80.000</option> <option value="4">da 81.000 a 100.000</option> <option value="5">da 101.000 a 200.000</option> <option value="0" selected>tutte le fasce</option> </select> </div></td> <td></td> </tr> <tr> <td height="88"></td> <td colspan="4" valign="top" bgcolor="#EDF5FE"> <div align="center"> <input type="submit" name="Submit" value="Trova">
ASP
codice:if Request.Form("zonarichiesta") = "-1" Then Response.Redirect("pag_err.htm") myDSN="PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};" myDSN=myDSN & "DBQ="&Server.MapPath("/data/xxxxxx.mdb")&";UID=administrator;PWD=;" 'Modificate per la gestione dell'assenza del campo motivazione (GV-2005-10-04) 'strWhere = " AND offerte.off_motivazione = " & Request.Form("motivazione") If Request.Form("motivazione") <> 0 then strWhere = " AND offerte.off_motivazione = " & Request.Form("motivazione") if Request.Form("zonarichiesta") <> 0 then strWhere = strWhere & " AND offerte.off_zona = " & Request.Form("zonarichiesta") 'Aggiunta per la gestione della zona speciale (GV-2005-10-04) if Request.Form("zonarichiesta") = 0 then strWhere = strWhere & " AND not(offerte.off_zona = 23) " If Request.Form("zonarichiesta") <> 23 Then 'Se si è scelto "speciale" non si aggiungono altre condizioni if Request.Form("tipologia") <> 0 then strWhere = strWhere & " AND off_tipologia = " & Request.Form("tipologia") if Request.Form("locali") <> 0 then strWhere = strWhere & " AND off_num_locali = " & Request.Form("locali") if Request.Form("prezzo") <> 0 then Select case Request.Form("prezzo") Case 1 strWhere = strWhere & " AND (off_prezzo > 0 AND off_prezzo <= 40000) " Case 2 strWhere = strWhere & " AND (off_prezzo > 40000 AND off_prezzo <= 60000) " Case 3 strWhere = strWhere & " AND (off_prezzo > 60000 AND off_prezzo <= 80000) " Case 4 strWhere = strWhere & " AND (off_prezzo > 80000 AND off_prezzo <= 100000) " Case 5 strWhere = strWhere & " AND (off_prezzo > 100000 AND off_prezzo <= 200000) " End Select End If End If Set conn = Server.CreateObject("ADODB.Connection") Set rst = Server.CreateObject("ADODB.Recordset") conn.Open myDSN 'Aggiunta per la gestione dell'assenza del campo motivazione (GV-2005-10-04) strWhere = Right(strWhere,Len(strWhere)-4) rst.Open "SELECT offerte.off_id, offerte.off_riferimento, offerte.off_zona, affiliati.[Ragione Sociale], motivazioni.mot_descrizione As Motivazione, tipologie.tip_descrizione As Tipologia, offerte.off_num_locali, offerte.off_descrizione, offerte.off_prezzo, offerte.off_img FROM ((offerte INNER JOIN affiliati ON offerte.off_zona = affiliati.codice_affiliato) INNER JOIN motivazioni ON offerte.off_motivazione = motivazioni.mot_id) INNER JOIN tipologie ON offerte.off_tipologia = tipologie.tip_id "_ & " WHERE " & strWhere & " ORDER BY offerte.off_zona", conn %> <html>
Cosa voglio fare:
mi occorre un tasto che vada direttamente a pescare il risultato speciale turismo (= i dati sono contenuti ed archiviati in un database in continuo aggioranmento), senza andarlo a selezionare nel form...considerando anche che le voci nel form sono soggette a continuo cambiamento...spero di essere stata più chiara ora!!!![]()