<%
if request.form("submit")<>"" then
dim database,conn,connstr
database="example.mdb" "数据库名称
set conn=server.createobject("adodb.connection") "创建connection对象
"provider参数设置数据库的驱动程序,access使用ole db驱动程序;data source参数设置数据库的实际路径及文件名称
connstr="provider=microsoft.jet.oledb.4.0;data source=" & server.mappath(database)
conn.open connstr "采用open方法连接数据库
keywords=request.form("key") "关键字
if trim(keywords)="" then
response.write "<script>alert("www.111cn.net请输入查询搜索关键字!");history.back();</script>"
response.end
end if
keywords=replace(keywords,","," ") "将获得的字符串中的英文逗号换成空格
keywords=replace(keywords,","," ") "将获得的字符串中的中文逗号换成空格
keywords=trim(keywords) "去掉字符串左边和右边空格
sql="" "关键字匹配sql语句
keywordarray=split(keywords) "将输入的字符串用空格分开,获得一个数组
max=ubound(keywordarray) "得到这个数组的最大下标值,即输入的关键字个数
if max=0 then "说明只输入了一个关键字,那么就不需要循环处理
sql=sql&"content like "%"&keywordarray(0)&"%"" "网站关键字模糊搜索
else "如果含有多个关键字,采用循环处理sql语句
for i=0 to max "如果关键字很多,我们要求每一个搜索都要匹配每一个关键字,通过循环来实现
if i=0 then "写入下面sql语句作为开头
sql=sql&"(content like "%"&keywordarray(i)&"%" and "
elseif i=max then "如果循环到最后一个关键字,写入下面sql语句作为结尾
sql=sql&"content like "%"&keywordarray(i)&"%")"
else "如果关键字不是开头也不是结尾,写入下面的sql语句
sql=sql&"content like "%"&keywordarray(i)&"%" and "
end if
next
end if
set rs=server.createobject("adodb.recordset") "创建recordset对象
"从数据库中查询content字段中包含关键字的记录
sql="select * from example where "&sql&""
rs.open sql,conn,1,3 "执行查询,结果保存在rs中
if rs.eof or rs.bof then "不存在记录
response.write("<script>alert("没有包含关键字的记录www.111cn.net!")</script>")
response.end
else "存在记录
do while not rs.eof "循环显示所有记录的id
id=rs("id")
%>
<%=rs("id")%> <%=rs("content")%>
<%
rs.movenext
loop
end if
end if
%>
http://m.bbyears.com/seo/27397.html
推荐访问:asp文件 asp什么意思