asp多条件模糊查询遇到问题,请高手帮忙

<formid="form1"name="form1"method="post"action=""><selectname="area"><optionvalue="地区... <form id="form1" name="form1" method="post" action="">
<select name="area">
<option value="地区一">地区一</option>
<option value="地区二">地区二</option>
<option value="地区三">地区三</option>
<option value="地区四">地区四</option>
<option value="地区五">地区五</option>
</select>
<select name="star">
<option value="五星">五星</option>
<option value="四星">四星</option>
<option value="三星">三星</option>
</select>
</form>

area和star为两个表 数据添加在jiudian的表里。分别为bid和xid
我想实现的是,选择area的时候,不选择star的时候,只显示所有满足area的数据
选择star的时候,而不选择area的时候,只显示所有满足star的数据
如果同时选择这两个条件,显示满足areat和star的数据

应该怎么实现啊,我下面的只能满足一个条件

<%
area=request("area")
star=request("star")
set rs=server.createobject("adodb.recordset")
sql="select * from jianli where bid='"&area&"'"
if strbid<>"" then
sql=sql+" and bid='"&area&"'"
end if
if strxid<>"" then
sql=sql+" and xid='"&star&"'"
end if

rs.open sql,conn,1,1
if rs.eof then
response.write "<tr class=altbg2><td colspan=4 align=center><font color=red>No related comments at present!</font></td></tr>"
else
rs.PageSize =10 '每页记录条数
iCount=rs.RecordCount '记录总数
iPageSize=rs.PageSize
maxpage=rs.PageCount
page=request("page")
if Not IsNumeric(page) or page="" then
page=1
else
page=cint(page)
end if
if page<1 then
page=1
elseif page>maxpage then
page=maxpage
end if
rs.AbsolutePage=Page
if page=maxpage then
x=iCount-(maxpage-1)*iPageSize
else
x=iPageSize
end if
end if
i=1
while not rs.eof and i<=rs.pagesize

%>
haiguang112@hotmail.com
还有点问题,能否在msn上联系
展开
 我来答
w2n0
2008-10-08 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:139
采纳率:0%
帮助的人:119万
展开全部
<%
dim pd
pd=" where"
area=request("area")
star=request("star")
if area="" and star <>"" then
pd=pd+"bid='"&area&"'"
elseif area<>"" and star="" then
pd=pd+"xid='"&star&"'"
else
pd=""
end if
set rs=server.createobject("adodb.recordset")
sql="select * from jianli "&pd

rs.open sql,conn,1,1
if rs.eof then
response.write "<tr class=altbg2><td colspan=4 align=center><font color=red>No related comments at present!</font></td></tr>"
else
rs.PageSize =10 '每页记录条数
iCount=rs.RecordCount '记录总数
iPageSize=rs.PageSize
maxpage=rs.PageCount
page=request("page")
if Not IsNumeric(page) or page="" then
page=1
else
page=cint(page)
end if
if page<1 then
page=1
elseif page>maxpage then
page=maxpage
end if
rs.AbsolutePage=Page
if page=maxpage then
x=iCount-(maxpage-1)*iPageSize
else
x=iPageSize
end if
end if
i=1
while not rs.eof and i<=rs.pagesize

%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
种音0dL
2008-10-08 · TA获得超过259个赞
知道答主
回答量:98
采纳率:0%
帮助的人:0
展开全部
sql="select * from jianli where bid='"&area&"'"
if strbid<>"" then
sql=sql+" and bid='"&area&"'"
end if
if strxid<>"" then
sql=sql+" and xid='"&star&"'"
end if

这段改成

sql="select * from jianli where"
if strbid<>"" and strxid<>"" then
sql=sql+" bid='"&area&"' and xid='"&star&"'"
end if
if strbid<>"" and strxid = "" then
sql=sql+" bid='"&area&"'"
end if
if strxid<>"" and strbid = "" then
sql=sql+" xid='"&star&"'"
end if

MSN:guweibeat@hotmail.com 我在日本,有问题上MSN。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式