我在做一个WAP搜索,是一个需要多表查询的,现在发现了一个很奇怪的问题.代码如下:
txtSQL = "select serial_no,MSG_TITLE from UMAS_HYXX WHERE MSG_TITLE like '%"& c &"%' union select serial_no,MSG_TITLE from UMAS_JKRS WHERE MSG_TITLE like '%"& c &"%' union select serial_no,MSG_TITLE from UMAS_JKZX WHERE MSG_TITLE like '%"& c &"%' union select serial_no,MSG_TITLE from UMAS_LYXX WHERE MSG_TITLE like '%"& c &"%' union select serial_no,MSG_TITLE from UMAS_MTZJ WHERE MSG_TITLE like '%"& c &"%' union select serial_no,MSG_TITLE from UMAS_SHZX WHERE MSG_TITLE like '%"& c &"%' union select serial_no,MSG_TITLE from UMAS_TYLM WHERE MSG_TITLE like '%"& c &"%' union select serial_no,MSG_TITLE from UMAS_YLXX WHERE MSG_TITLE like '%"& c &"%'"
rs.open txtsql,adocon,1,1
filepath=request.servervariables("path_info")
page=1
page=request("page")
rs.Pagesize=8'每页的记录的条数
if Not IsEmpty(trim(Request("Page"))) then
Page = CInt(Request("Page"))
if Page > rs.PageCount then
rs.AbsolutePage=rs.PageCount
else if Page<=0 then
Page=1
else
rs.AbsolutePage=Page
end if
end if
End if
i=1
do while not rs.eof
%>
<a href="search_nl.asp?title1=<%=rs("serial_no")%>"><%=rs("MSG_TITLE")%></a><br/>
<br/>
<%
i=i+1
if i>rs.Pagesize then exit do
rs.movenext
loop
%>
<%if rs.pagecount<>1 and rs.pagecount<>0 then%>
<%if page>=rs.pagecount then%>
<a title="确定" href="<%=filepath%>?Page=<%=page-1%>">上一页</a>
<%else%>
<%if page<>1 then %>
<a title="确定" href="<%=filepath%>?Page=<%=page-1%>">上一页</a><br/>
<% end if %>
<a title="确定" href="<%=filepath%>?Page=<%=page+1%>">下一页</a>
<%end if %>
<%end if
response.Write "第"&page&"页共"&rs.pagecount&"页"
%>在页面上第一页显示正常,然后点下一页就错了!显示出来的是select serial_no,MSG_TITLE from UMAS_HYXX union select serial_no,MSG_TITLE from UMAS_JKRS union select serial_no,MSG_TITLE from UMAS_JKZX.............的结果集,也就是没加条件的结果集了!
这个问题很奇怪,我调试了很多次,还是找不到原因.大家帮忙看看吧!