Salve ragazzi,
spero di spiegarmi bene e che il mio errore sia di facile interpretazione e soluzione.
Ho la mia drop down list con un pulsante cerca, uno annull e una casella di testo...fin qui tutto ok.....
<form method="GET" action="biblioteca/biblioteca.asp" target="_blank">
<select size="1" name="order">
<option> </option>
<option>Titolo</option>
<option>Autore</option>
<option>Editore</option>
<option>Anno</option>
</select>
<p><input type="text" name="testo" size="13"></p>
<input type="reset" value="Annulla" size="9">
<input type="submit" value="Cerca" name="submit" size="9">
</form>
---------------------------------------------
Riporto il codice della pagina biblioteca.asp
-------------------------------------------
Se l'utente non riempie la casella di testo e non seleziona nessuna voce dell'elenco a cascata, viene visualizzato tutto il contenuto del db e fin qui ci siamo......
I problemi iniziano quando l'utente fa una selezione....
Mi da problemi dopo la Where....come si mettono gli apici???
-----------------------------------------------------------
strSQL = "Select * from biblioteca WHERE "&% "%' testo LIKE '%" & request("testo") &"%' " &" ORDER BY " & request("order")
------------------------------------------------------------
il db è composto dalla tabella libri e i campi sono: Id, autore, anno, editore e titolo
-----------------------------------------------------------
<HTML>
<HEAD>
<TITLE>Biblioteca Virtuale</TITLE>
</HEAD>
<BODY background="../images/r4.jpg">
<table width=100% cellspacing=0 cellpadding=0>
<tr><td><font size=-3 > </font></td></tr>
<tr><td align=center><font color=#0000A0 face=Tahoma,Arial size=4><B>Biblioteca Virtuale</B></font></td></tr>
<tr><td align=center><hr size=1></td></tr>
</table>
<br><br>
<%
Dim DbPath1, Conn1
DbPath1="biblioteca.mdb"
Set Conn1 = Server.CreateObject("ADODB.Connection")
Conn1.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(DbPath1)
Dim Cerca, Rs1, prova
Cerca = Replace(Request.Form("Titolo"), "'","") & Replace(Request.Form("Autore"), "'","") & Replace(Request.Form("Editore"), "'","") & Replace(Request.Form("Anno"), "'","")& Replace(Request.Form("Dislocazione"), "'","")
if Cerca = "" then
prova = " Select * from libri order by ID"
Set Rs1 = Server.CreateObject("ADODB.Recordset")
Rs1.Open prova, Conn1, 3, 3
Do while NOT Rs1.EOF
Response.write " <b><font color=#0000A0 size=2>Titolo: </font></b>" & Rs1("Titolo") & "<br><b><font color=#0000A0 size=2>Autore: </font></b>" & Rs1("Autore") & "<br><b><font color=#0000A0 size=2>Editore: </font> </b>" & Rs1("Editore") & "<br><b><font color=#0000A0 size=2>Anno:</font> </b> " & Rs1("Anno") & "<br><b><font color=#0000A0 size=2>Dislocazione:</font> </b>" & Rs1("Dislocazione") & "<br><br>"
Rs1.MoveNext
loop
Rs1.close
Set Rs1 = Nothing
Conn1.close
Set Conn1 = Nothing
else
Dim DbPath, Conn
DbPath="biblioteca.mdb"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(DbPath)
Dim strSQL, Rs
strSQL = "Select * from biblioteca WHERE "&% "%' testo LIKE '%" & request("testo") &"%' " &" ORDER BY " & request("order")
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.Open strSQL, Conn, 3, 3
if Rs.EOF then
Response.write " Nessun risultato trovato"
else
Do while NOT Rs.EOF
Response.write " <b><font color=#0000A0 size=2>Titolo: </font></b>" & Rs("Titolo") & "<br><b><font color=#0000A0 size=2>Autore: </font></b>" & Rs("Autore") & "<br><b><font color=#0000A0 size=2>Editore: </font> </b>" & Rs("Editore") & "<br><b><font color=#0000A0 size=2>Anno:</font> </b> " & Rs("Anno") & "<br><b><font color=#0000A0 size=2>Dislocazione:</font> </b>" & Rs("Dislocazione") & "<br><br>"
Rs.MoveNext
Loop
End If
Rs.close
Set Rs = Nothing
Conn.close
Set Conn = Nothing
End if
%>
<hr>
<center><a href=documenti/Biblioteca.pdf target="_blank"><Font color=#0000A0 size=2 face=Tahoma,Arial><Strong>Fai clic qui per scaricare l'elenco completo in formato pdf.</Strong></Font><a></center>
</body>
</html>
Grazie a tutti
Stefano