首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

求教ASP查询结果分页有关问题,参数如何传递啊

2012-07-30 
求教ASP查询结果分页问题,参数怎么传递啊,在线等我想做一个ASP查询子程序,但是按条件查询后显示分页的时候

求教ASP查询结果分页问题,参数怎么传递啊,在线等
我想做一个ASP查询子程序,但是按条件查询后显示分页的时候第一页正常,但是点下一页就出现问题了,不能显示了,要么就显示的是所有记录而不是我按条件查询的那个记录。总感觉参数传递的不对还是怎么回事,请那个高手帮我看一下。
代码所在页面为ip.asp,以下代码是其中的查询模块,

VBScript code
sub ipfind()'IP查找\状态查看call chk_login()'权限判断dim i,intPage,page,pre,last,filepath,sqlcx,cx_cxfs,sqlset rs = Server.CreateObject("ADODB.RecordSet")cx_cxfs=request.Form("cxfs")cx_cxnr=request.Form("cxnr")select case cx_cxfs    case 1        '所有数据      sqlcx="select * from ip order by id,branch_name"    case 2        '机构查询       sqlcx="select * from ip where branch_name like '%"&request.Form("cxnr")&"%' order by id"    case 3        '部门查询      sqlcx="select * from ip where Departments like '%"&request.Form("cxnr")&"%' order by id"    case 4        '使用者查询      sqlcx="select * from ip where user_name like '%"&request.Form("cxnr")&"%' order by id"    case 5        'IP查询      sqlcx="select * from ip where ip_address like '%"&request.Form("cxnr")&"%' order by id"    case 6        'MAC查询      sqlcx="select * from ip where mac_address like '%"&request.Form("cxnr")&"%' order by id"    case 7        '未分配IP查询      'sqlcx="update ip set user_name=''"      sqlcx="select * from ip where user_name='' and ip_address<>'' order by id desc"end select%><table width="743" border="0" cellspacing="0" cellpadding="0">    <tr>        <td><h3><img src="images/address.png" width="16" height="16"> IP地址信息</h3></td>    </tr>    <tr>      <td><div align="center">        <form name="form2" method="post" action="ip.asp?action=ipfind">          <label>            查询方式:            <select name="cxfs" id="cxfs">              <option value="1">所有数据记录</option>              <option value="2">按机构名查询</option>              <option value="3">所属部门查询1.close:


[解决办法]
intpage = rs.PageCount
<a href="ip.asp?page=<%=intpage -1%>">上页</a>
<a href=ip.asp?action=ipfind&page="<%=intpage +1%>">下页</a>
你自己看下,上页和下页访问的可能都是固定的一页.
当然出问题了.
还有你的rs.PageCount可能也出错了.

[解决办法]
你用了Request.Form,而你在点上页、下页、首页、尾页的时候并不产生POST动作,所以Request.Form("cxfs")和Request.Form("cxnr")得到的值都是null,经过Select循环后sqlcx值还是空,当然出错了。

先把这两行:
cx_cxfs=request.Form("cxfs")
cx_cxnr=request.Form("cxnr")

改为:
cx_cxfs=request.QueryString("cxfs")
cx_cxnr=request.QueryString("cxnr")

然后在上页、下页、首页、尾页那些链接上的page=x后面都加上&cxfs=<%=cx_cxfs%>&cxnr=<%=cx_cxnr%>,再试一下……
[解决办法]
把cx_cxfs=request.Form("cxfs")
cx_cxnr=request.Form("cxnr")
改为
cx_cxfs=request("cxfs")
cx_cxnr=request("cxnr")
而不是楼上说的

不然你表单查询的时候就没有数据了


然后在你这些<a href="ip.asp?page= <%=intpage -1%>">上页 </a>改为下面形式的

<a href="ip.asp?page= <%=intpage -1%>&cxfs=<%=cx_cxfs%>&cxnr=<%=cx_cxnr%>">上页 </a>

热点排行