asp多条件查询

在index.asp的form中,有多个input来输入查询条件,查询条件有“姓名”,“地址”,“电话”,“QQ”。name属性分别为:“names”,“address”... 在index.asp的form中,有多个input来输入查询条件,查询条件有“姓名”,“地址”,“电话”,“QQ”。name属性分别为:“names”,“address”,“TEL”,“QQ”,form中各项属生通过post方式传到result.asp。
result.asp中实现查询数据库中的数据。数据库名为data.mdb,表名为info,各字段分别为names、address、TEL、QQ。已经用resqust接受到了index.asp中post来的值了。现在要实现的是查询。当index.asp中input不为空的时候,查询这些条件,条件用and连接。在result.asp中显示查询的结果。当index.asp的input输入为空的时候,则不查询此条件。
请高手帮忙写下result.asp代码。万分感谢。

<!-- #include file="conn.asp" -->
<%
names=Request.Form("names")
address=Request.Form("address")
tel=Request.Form("tel")
qq=Request.Form("qq")
%>
<div name="hxqsj" aline="center">
<table border="0" width="100%">
<tr>
<td width="8%">姓名</td>
<td width="8%">地址</td>
<td width="8%">电话</td>
<td width="8%">QQ</td>
</tr>
</table>
</div>
<%
set rs=server.CreateObject("adodb.recordset")
sql="select * from info where"
if names<>"" then
sql=sql + " names='%"&names&"%' "
end if
if address<>"" then
sql=sql + " and address='%"&address&"%' "
end if
if tel<>"" then
sql=sql + " and tel='%"&tel&"%'"
end if
if qq<>"" then
sql=sql + " and qq like '%"&qq&"%'"
end if
sql=sql + " order by id "

rs.open sql,conn,1,1
Do While Not rs.eof
%>
<div name="hxqsj" aline="center">
<table border="0" width="100%">
<tr>
<td width="8%"><%=rs("names")%></td>
<td width="8%"><%=rs("address")%></td>
<td width="8%"><%=rs("tel")%></td>
<td width="8%"><%=rs("qq")%></td>
</tr>
</table>
</div>

<%
rs.movenext
Loop
rs.close
set rs=nothing
set conn=nothing
%>
至少一个参数没有被指定值。错在哪?请指正。
假如设tel字段和QQ字段为双精度数值型数据呢?
展开
 我来答
forteensay
2010-07-16 · TA获得超过299个赞
知道小有建树答主
回答量:688
采纳率:0%
帮助的人:0
展开全部
sql语句相连

+ 换成 &

全为空的时候 select * from 表 where 1=1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
若绮彤ES
2010-07-16 · TA获得超过2928个赞
知道大有可为答主
回答量:4310
采纳率:100%
帮助的人:7384万
展开全部
sql=sql + " names='%"&names&"%' "

把所有 “+” 改成 “&”
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式