标题:简单分页问题,请哥哥姐姐们看看:
只看楼主
only
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2004-6-23
 问题点数:0 回复次数:11 
简单分页问题,请哥哥姐姐们看看:

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>学生信息表</title> </head> <body> <% dim conn,dbpath set conn=server.createobject("adodb.connection") dbpath=server.mappath("student.mdb") conn.open "provider=microsoft.jet.oledb.4.0;data source="&dbpath set rs=server.createobject("adodb.recordset") sqlstr="select * from stud_info order by stud_id" rs.open sqlstr,conn,1,1 response.write "本表格共有"&rs.recordcount&"条记录:<br>" if rs.recordcount>0 then %> <table width=760 border=1 cellpadding=3 cellspacing=0 bgcolor=#EFEFEF> <tr bgcolor=#CEDBFF> <td width=60>学号</td><td width=70>姓名</td><td width=50 align=center>性别</td><td width=100>出生日期</td> <td width=160>地址</td><td width=120>电话</td><td width=50>邮编</td><td width=80 align=right>所在系号</td> <td width=70 align=right>奖学金</td></tr> <% rs.pagesize=4 page=cint(request.form("page")) if page="" then page=1 if page<1 then page=1 if page>=rs.pagecount then page=rs.pagecount rs.absolutepage=page for i=1 to rs.pagesize %> <tr><td><%=rs("stud_id")%></td><td><%=rs("name")%></td><td align=center><%=rs("gender")%></td> <td><%=rs("birthday")%></td><td><%=rs("address")%></td><td><%=rs("telcode")%></td> <td><%=rs("zipcode")%></td><td align=right><%=rs("deptcode")%></td><td align=right><%=rs("salary")%></td> </tr> <% rs.movenext if rs.eof then exit for next end if %> </table> <table width=760 border=1 cellpadding=3 cellspacing=0 bgcolor=#EFEFEF> <tr> <td width=760 align=right> <a href="sb1.asp"?page=1>首页</a>&nbsp;<a href="sb1.asp"?page="&(page-1)&">上页</a>&nbsp;<a href="sb1.asp"?page="&(page+1)&">下页&nbsp;</a><a href="sb1.asp"?page="&rs.pagecount&">未页</a>&nbsp;&nbsp; </td> </tr> </table> <%

rs.close set rs=nothing conn.close set conn=nothing %> </body> </html> 不知道错在什么地方了!测试时总是显示在第一页,第二页第三页翻不下去! 在IE发地址栏中输入http://localhost/sb1.asp?page=2也无法翻页 小妹新手,请大家帮忙!

[此贴子已经被作者于2004-06-23 20:43:19编辑过]

搜索更多相关主题的帖子: html 表格 content source title 
2004-06-23 20:40
belin2000
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:975
专家分:194
注 册:2004-6-2
得分:0 

给一个分页的你参考: <!--#include file="conn.asp"--> <% if request.Form("txtming")="" then strming="%" else strming=replace(request.Form("txtming")," ","")'第一个是去掉空格,其实用trim可以嘞 end if if request.Form("txtshidai")="" then strshidai="%" else strshidai=replace(request.Form("txtshidai")," ","") end if set rs=server.CreateObject("adodb.recordset") sql="select * from a where ming like '%"&replace(strming,"'","''")&"%' and shidai like '%"&replace(strshidai,"'","''")&"%' order by id desc" '第二个是去掉 ' 因为有可能利用 ’ 来改变你的sql,从而做出黑客的动作, replace(strming,"'","''")把单引号换成双引号 rs.open sql,conn,1,1

const MaxPerPage=6 '单独页最大记录数 const 用来申明常量 dim sql dim rs dim totalPut '总记录 dim CurrentPage '当前页次 dim TotalPages '总页数 dim i

%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>无标题文档</title> <style type="text/css"> <!-- body,td,th { font-size: 9pt; } --> </style></head>

<body> <% rs.MoveFirst '注意放到前面来,否则到任何页总是在第一个记录上 rs.pagesize=MaxPerPage '设置每页最多显示多少条记录 If trim(Request("Page"))<>"" then '如果请求的页次不为空 CurrentPage= CLng(request("Page")) 'clng是转换成长整型数据类型,并赋值到当前页次上 If CurrentPage> rs.PageCount then '如果当前页次大于总页数,则将最大页次赋值到当前页次上 CurrentPage = rs.PageCount End If Else CurrentPage= 1 '一切条件不成立,将当前页设为第一页 End If

totalPut=rs.recordcount '将总记录赋值于TOTALPUT if CurrentPage<>1 then '如果当前页数不等于第一页 if (currentPage-1)*MaxPerPage<totalPut then '如果当前页减一乘以每页最大的记录数小于总记录的话 rs.move(currentPage-1)*MaxPerPage '相对当前记录数向后移动 dim bookmark '定义书签变量 bookmark=rs.bookmark '将当前记录的标签赋于变量BOOKMARK上 end if end if

dim n,k if (totalPut mod MaxPerPage)=0 then '总记录数与每页最大记录数求余的结果为零时,则N返回整数页次,否则再加一. n= totalPut \ MaxPerPage else n= totalPut \ MaxPerPage + 1 end if %> <table width="484" border="0" cellpadding="1" cellspacing="1" bgcolor="#000000"><!--DWLayoutTable--> <tr align="center" valign="middle" bgcolor="#CCCCCC"> <td width="27">id</td> <td width="94">姓名</td> <td width="100">时代</td> <td width="250">日期</td> </tr> <% i=0 Do While Not rs.EOF and i<maxperpage %> <tr align="center" valign="middle" bgcolor="#FFFFFF"> <td><%=rs("id")%></td> <td><%=rs("ming")%></td> <td><%=rs("shidai")%></td> <td><%=rs("riqi")%></td> </tr> <% i=i+1 rs.MoveNext Loop %> </table><br> <table width="485" border="0" cellpadding="0" cellspacing="0" height="20"> <!--DWLayoutTable--> <tr> <td width="485" height="20" align="center" valign="middle" bgcolor="#FFFFFF"> <!-- 分页显示代码块 可独立使用,注意和上面分页功能代码配使用 --> <div align="center">当前第<font color="#FF0000"><%=currentpage%></font>页 总共<font color="#FF0000"><%=n%></font>页 共<font color="#FF0000"><%=rs.recordcount%></font>条记录 <%k=currentPage if k<>1 then response.write "[<b>"+"<a href='resault.asp?page=1'>首页</a></b>] " response.write "[<b>"+"<a href='resault.asp?page="&cstr(k-1)&"'>上一页</a></b>] " else Response.Write "[首页] [上一页]" end if if k<>n then response.write "[<b>"+"<a href='resault.asp?page="&cstr(k+1)&"'>下一页</a></b>] " response.write "[<b>"+"<a href='resault.asp?page="&cstr(n)&"'>尾页</a></b>] " else Response.Write "[下一页] [尾页]" end if %> </div></td> </tr> </table><br>

</body> </html>

[此贴子已经被作者于2004-06-24 12:02:36编辑过]


59ita点com(我就爱TA)
2004-06-24 11:22
only
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2004-6-23
得分:0 

belin2000版主我怎么看不懂啊 ----------------------------------------------

现在好了刚才是乱码! 十分感谢!

[此贴子已经被作者于2004-06-24 15:01:43编辑过]


2004-06-24 11:47
belin2000
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:975
专家分:194
注 册:2004-6-2
得分:0 
那你想怎么?我都有写解释的了!

59ita点com(我就爱TA)
2004-06-24 12:20
regedit
Rank: 5Rank: 5
等 级:贵宾
威 望:19
帖 子:950
专家分:0
注 册:2004-6-8
得分:0 
belin2000你的分页程序怎么这么长????

最新作品:百货品牌商品资讯第一门户([url]http://www./[/url]),欢迎交流
2004-06-24 12:34
regedit
Rank: 5Rank: 5
等 级:贵宾
威 望:19
帖 子:950
专家分:0
注 册:2004-6-8
得分:0 
把rs.absolutepage=page放到rs.open sqlstr,conn,1,1
后面,或是for i=1 to rs.pagesize的后面!

最新作品:百货品牌商品资讯第一门户([url]http://www./[/url]),欢迎交流
2004-06-24 12:36
belin2000
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:975
专家分:194
注 册:2004-6-2
得分:0 
不觉得,我还有更长的,你的呢?发上来看看拉!

59ita点com(我就爱TA)
2004-06-24 12:45
regedit
Rank: 5Rank: 5
等 级:贵宾
威 望:19
帖 子:950
专家分:0
注 册:2004-6-8
得分:0 

好,我的肯定比你的短!


最新作品:百货品牌商品资讯第一门户([url]http://www./[/url]),欢迎交流
2004-06-24 13:03
寒星
Rank: 1
等 级:新手上路
帖 子:455
专家分:0
注 册:2004-6-7
得分:0 
&lt;html&gt;
&lt;!--#include file="../includes/dbconn.inc"--&gt;;数据库连接文件
&lt;style type="text/css"&gt;;样式表
&lt;!--
@import url("../css/font1.css");
@import url("../css/link.css");
@import url("../css/input.css");
--&gt;
&lt;/style&gt;
&lt;%
   const maxperpage=25;每页显示记录数
   dim totalput,currentpage,totalpages,i,j,ii
   dim conn,rs,sql
     call openDB();打开数据库
%&gt;
&lt;body&gt;
&lt;center&gt;
 &lt;%
  rs.open "SELECT 教师编号,教师姓名,sum(出库数量*单价) AS 总金额 FROM 教师出库 group by 教师编号,教师姓名 order by 教师编号",conn,1,1
 if not rs.eof then
    rs.movefirst
    rs.pagesize=maxperpage;把最大记录数赋给pagesize
    howmanyfields=rs.fields.count-1
    if trim(request("page"))&lt;&gt;"" then
   currentpage=clng(request("page"))
   if currentpage&gt;rs.pagecount then;当前页大于rs的页数量
   currentpage=rs.pagecount当前页设为最大页数
   end if
    else
     currentpage=1;当前页设为1
    end if
    if rs.eof then
    response.write"&lt;p align='center'&gt;ERROR!&lt;/p&gt;"
    else
    totalput=rs.recordcount;总记录数
    if currentpage&lt;&gt;1 then
   if (currentpage-1)*maxperpage&lt;totalput then
      rs.move(currentpage-1)*maxperpage
      dim bookmark
      bookmark=rs.bookmark;书签
   end if
    end if
    dim n,k
    if(totalput mod maxperpage)=0 then
     n=totalput\maxperpage;计算页数
    else
     n=totalput\maxperpage+1
    end if
  %&gt;
&lt;table width="700" class="font1"&gt;
  &lt;tr&gt;&lt;td align="center"&gt;
  &lt;%
  k=currentpage
    if k&lt;&gt;1 then
    response.write"[&lt;b&gt;"+"&lt;a href=tehuizong.asp?page=1&gt;首页&lt;/a&gt;&lt;/b&gt;]"
    response.write"[&lt;b&gt;"+"&lt;a href=tehuizong.asp?page="+cstr(k-1)+"&gt;上一页&lt;/a&gt;&lt;/b&gt;]"
    else
    response.write"[首页][上一页]"
    end if
    if k&lt;&gt;n then
    response.write"[&lt;b&gt;"+"&lt;a href=tehuizong.asp?page="+cstr(k+1)+"&gt;下一页&lt;/a&gt;&lt;/b&gt;]"
    response.write"[&lt;b&gt;"+"&lt;a href=tehuizong.asp?page="+cstr(n)+"&gt;尾页&lt;/a&gt;&lt;/b&gt;]"
    else
    response.write"[下一页][尾页]"
    end if
 %&gt;
共 &lt;%=n%&gt; 页 第 &lt;%=currentpage%&gt; 页,共 &lt;%=rs.recordcount%&gt; 记录
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;hr&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
 &lt;table border="1" cellspacing="0" bgcolor="#ECEDF9" class="font1"&gt;
 &lt;tr align="center"&gt;
 &lt;% for ii=0 to rs.fields.count-1 %&gt;
     &lt;td width="100"&gt;&lt;b&gt;
  &lt;% =rs(ii).name%&gt;
  &lt;/b&gt;&lt;/td&gt;
 &lt;% next %&gt;
 &lt;/tr&gt;
 &lt;%
 do while not rs.eof and i&lt;maxperpage;当不溢出且小于每页的最大记录数
 %&gt;
 &lt;tr align="center"&gt;
 &lt;%
 for j=0 to rs.fields.count-1
 %&gt;
 &lt;td&gt;&amp;nbsp;&lt;%=rs(j).value%&gt;&amp;nbsp; &lt;/td&gt;
 &lt;%next%&gt;
 &lt;/tr&gt;
 &lt;%
 i=i+1
 rs.movenext;到下一条
 loop
 end if
 %&gt;
 &lt;/table&gt;&lt;br&gt;
 &lt;%
  else
 response.Write("对不起,暂时无相关记录")
 end if
 call closeDB();关闭数据库
%&gt;
&lt;/center&gt;
&lt;/body&gt;
&lt;/html&gt;  

http://www. 版主位置空缺
2004-06-24 14:22
only
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2004-6-23
得分:0 

谢谢上面的各位版主们! 你们的热情真让人感动!再次感谢!!! 我再试试!


2004-06-24 15:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-2787-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020034 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved