ASP小问题(答对追加50分)

来源:百度知道 编辑:UC知道 时间:2024/05/22 17:24:45
错误类型:
Microsoft JET Database Engine (0x80040E14)
字符串的语法错误 在查询表达式 'BookName like '%%'or BookAuthor like '%%' or BookPublish like'%%' 中。
代码如下:
<% Set Con=Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("BookStore.mdb")
con.Open connstr
Set Rs=Server.CreateObject("ADODB.Recordset")

SearchFor=trim(Request("SearchFor"))

query="select*from BookInfo where BookName like '%"&searchfor&"%'or BookAuthor like '%"
query=query+SearchFor+"%' or BookPublish like'%"+SearchFor+"%"'
Rs.Open query,Con,3,2
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml

参数没有接收到,因为变量SearchFor为空,所以查询的时候就报错,建议加个判断
if SearchFor="" then
response.write "<script>alert('请输入要查询的关键字');history.go(-1);</script>"
response.end
else '这里开始输入你自己的查询代码

end if