21. april 2004 - 15:21Der er
8 kommentarer og 2 løsninger
][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80040E10) [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1. /test/krc/tipsbasen/search.asp, line 82
'If Len(strKeyword) = 0 Then ' Hvis der ikke er skrevet i feltet ' Response.Clear ' Response.Redirect("search.htm") 'Else ' Hvis der er skrevet i feltet strKeyword = Replace(strKeyword,"'","''") strKategori = Replace(strKategori,"'","''") 'End If
if strRetning = "Stigende" then strRet = "asc;" end if
if strRetning = "Faldende" then strRet = "desc;" end if
' Opbygger en dynamisk SQL streng
if strkeyword <> "" then
if strkategori = "Alle" then
strSQL = "SELECT ID_no, forfatter, overskrift, tips, kategori, dato FROM tipstabel WHERE" strSQL = strSQL & " ((forfatter LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (overskrift LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (tips LIKE '%" & strKeyword & "%'))" strSQL = strSQL & " Order by " & StrSort strSQL = strSQL & " " & StrRet
else
strSQL = "SELECT ID_no, forfatter, overskrift, tips, kategori FROM tipstabel WHERE" strSQL = strSQL & " ((forfatter LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (overskrift LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (tips LIKE '%" & strKeyword & "%'))" strSQL = strSQL & " AND (kategori = '" & strKategori & "')" strSQL = strSQL & " Order by " & StrSort strSQL = strSQL & " " & StrRet
end if
else
if strkategori = "Alle" then
strSQL = "SELECT ID_no, forfatter, overskrift, tips, kategori, dato FROM tipstabel " strSQL = strSQL & " Order by " & StrSort strSQL = strSQL & " " & StrRet
' Skaber DSNLess forbindelse til DBen strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("tips.mdb") Set myConn = Server.CreateObject("ADODB.Connection") myConn.Open strDSN
' Skaber et recordset udfra SQL strengen Set rs = myConn.Execute(strSQL) If Not (rs.BOF Or rs.EOF) Then ' Hvis der er fundet poster på søgningen ' Response.Write "<font face='verdana' size='1'><b>Søgekriterier</b><br>" Response.Write "<br>" Response.Write "<div align='center'>" Response.Write "<table border='0' width='80%' cellpadding='0' cellspacing='0'>" Response.Write "<tr>" Response.Write "<td bgcolor='#CCCCCC'>" if strkeyword="" then Response.Write "<font face='verdana' size='1'>Der er søgt efter <b> alle forekomster" else Response.Write "<font face='verdana' size='1'>Der er søgt efter <b>"&strkeyword end if Response.Write "<font face='verdana' size='1'></b> i kategorien <b>"&strkategori Response.Write "<font face='verdana' size='1'></b>. Resultatet er sorteret efter <b>"&strsort Response.Write "<font face='verdana' size='1'></b>,<b> "&strretning&".<br><br></b>" Response.Write "</td>" Response.Write "</tr>" Response.Write "</table>" Response.Write "</div>"
rs.MoveNext Loop Response.Write "</table>" Else ' Hvis der ikke er fundet poster på søgningen Response.Write "<p>Der er ikke fundet noget på denne søgning</p>" End If
' Rydder op efter os myConn.Close Set myConn = Nothing %>
Så er alle select udskiftet og Response.Write( strSQL ) er sat ind.
Men stadig fejl :
Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80040E10) [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1. /test/krc/tipsbasen/search.asp, line 83
Browser Type: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Page: POST 76 bytes to /test/krc/tipsbasen/search.asp
POST Data: Keyword=test&kategori=Alle&sort=Dato&retning=Stigende&Action=Start+s%F8gning
'If Len(strKeyword) = 0 Then ' Hvis der ikke er skrevet i feltet ' Response.Clear ' Response.Redirect("search.htm") 'Else ' Hvis der er skrevet i feltet strKeyword = Replace(strKeyword,"'","''") strKategori = Replace(strKategori,"'","''") 'End If
if strRetning = "Stigende" then strRet = "asc;" end if
if strRetning = "Faldende" then strRet = "desc;" end if
' Opbygger en dynamisk SQL streng
if strkeyword <> "" then
if strkategori = "Alle" then
strSQL = "SELECT * FROM tipstabel WHERE" strSQL = strSQL & " ((forfatter LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (overskrift LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (tips LIKE '%" & strKeyword & "%'))" strSQL = strSQL & " Order by " & StrSort strSQL = strSQL & " " & StrRet
else
strSQL = "SELECT * FROM tipstabel WHERE" strSQL = strSQL & " ((forfatter LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (overskrift LIKE '%" & strKeyword & "%')" strSQL = strSQL & " OR (tips LIKE '%" & strKeyword & "%'))" strSQL = strSQL & " AND (kategori = '" & strKategori & "')" strSQL = strSQL & " Order by " & StrSort strSQL = strSQL & " " & StrRet
end if
else
if strkategori = "Alle" then
strSQL = "SELECT * FROM tipstabel " strSQL = strSQL & " Order by " & StrSort strSQL = strSQL & " " & StrRet
' Skaber DSNLess forbindelse til DBen strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("tips.mdb") Set myConn = Server.CreateObject("ADODB.Connection") myConn.Open strDSN
Response.Write( strSQL ) ' Skaber et recordset udfra SQL strengen Set rs = myConn.Execute(strSQL) If Not (rs.BOF Or rs.EOF) Then ' Hvis der er fundet poster på søgningen ' Response.Write "<font face='verdana' size='1'><b>Søgekriterier</b><br>" Response.Write "<br>" Response.Write "<div align='center'>" Response.Write "<table border='0' width='80%' cellpadding='0' cellspacing='0'>" Response.Write "<tr>" Response.Write "<td bgcolor='#CCCCCC'>" if strkeyword="" then Response.Write "<font face='verdana' size='1'>Der er søgt efter <b> alle forekomster" else Response.Write "<font face='verdana' size='1'>Der er søgt efter <b>"&strkeyword end if Response.Write "<font face='verdana' size='1'></b> i kategorien <b>"&strkategori Response.Write "<font face='verdana' size='1'></b>. Resultatet er sorteret efter <b>"&strsort Response.Write "<font face='verdana' size='1'></b>,<b> "&strretning&".<br><br></b>" Response.Write "</td>" Response.Write "</tr>" Response.Write "</table>" Response.Write "</div>"
rs.MoveNext Loop Response.Write "</table>" Else ' Hvis der ikke er fundet poster på søgningen Response.Write "<p>Der er ikke fundet noget på denne søgning</p>" End If
' Rydder op efter os myConn.Close Set myConn = Nothing %>
Error Type: ADODB.Recordset (0x800A0CC1) Item cannot be found in the collection corresponding to the requested name or ordinal. /test/krc/tipsbasen/search.asp, line 149
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.