Salve a tutti,
ho un piccolo problema con un motore di ricerca.
funziona tutto perfettamente ma non riesco a fare in modo che quando il valore di ricerca è vuoto la ricerca dovrebbe mostrare tutti i dati.
è difficile da spiegare posto il codice
Codice form di ricerca:
<form id="form1" name="form1" method="post" action="ricerca.asp">
<label>
Marca
<select id="marca" name="marca">
<option>---</option>
<option value="Bmw">BMW</option>
<option value="Ferrari">Ferrari</option>
</select>
</label>
<label>Alimentazione
<select name="alimentazione" id="alimentazione">
<option>---</option>
<option>benzina</option>
<option>diesel</option>
</select>
</label>
<label>Anno
<select name="anno" id="anno">
<option>---</option>
<option value="2000">2000</option>
<option value="2001">2001</option>
<option value="2002">2002</option>
<option value="2003">2003</option>
<option value="2004">2004</option>
</select>
</label>
<label>
<input type="submit" name="invio" id="invio" value="Ricerca" />
</label>
</p>
</form>
codice asp ricerca:
<%
Dim marca, alimentazione, anno
alimentazione = Replace(Request.Form("alimentazione"), "'", "")
anno = Replace(Request.Form("anno"), "'", "")
marca = Replace(Request.Form("marca"), "'", "")
if marca = "" then
Response.write "Errore. Non hai inserito nessun termine da cercare"
Response.end
end if
Set Conn=Server.CreateObject("ADODB.Connection")
strConn="driver={Microsoft Access Driver (*.mdb)}; "
strConn=strConn & " DBQ=" & Server.MapPath("/mdb-database/database.mdb")
Conn.Open strConn
sql = "SELECT * FROM auto where marca like '%" & marca & "%' AND anno like '%" & anno & "%' AND alimentazione like '%" & alimentazione & "%' "
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, conn
if Rs.EOF then%>
<%
Response.write "Nessun risultato trovato!"
else
do while not(rs.eof)
%>
</div>
<table width="750" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="173"><table width="782" height="146" border="0" align="center" cellpadding="0" cellspacing="0" id="link">
<tr>
<td width="173" rowspan="4"><table width="160" height="120" border="2" align="center" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC">
<tr>
<td width="167" align="center">">[img]<%=rs([/img]" alt="" name="img1" width="150" height="110" border="0" id="img1" /></td>
</tr>
</table></td>
<td width="11" rowspan="4"></td>
<td width="598" height="34"><table width="590" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><span class="Stile2"><%=rs("modello")%></span></td>
</tr>
</table></td>
</tr>
<tr>
<td height="38"><table width="590" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="592" height="20"><span class="Stile3">Descrizione:</span></td>
</tr>
<tr>
<td class="Stile5"><div class="Stile4"><%=rs("descrizione")%></div></td>
</tr>
</table></td>
</tr>
<tr>
<td height="20"><table width="590" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="610" class="Stile3">Prezzo:</td>
</tr>
<tr>
<td class="Stile4"><%=rs("prezzo1")%></td>
</tr>
</table></td>
</tr>
<tr>
<td height="19"></td>
</tr>
</table></td>
</tr>
<tr>
<td height="2"><hr /></td>
</tr>
</table>
<%
rs.movenext
loop
End If
rs.Close
set rs = Nothing
conn.Close
set conn = Nothing
%>
se il valore della marca è vuoto (quindi prima opzione) come mostro tutte le marche però con alimentazione = diesel e anno = 2000????
Oddio![]()
![]()
help me please

Rispondi quotando
