标题:关于asp自动编号并分页的问题
只看楼主
kombel
Rank: 2
等 级:论坛游民
帖 子:69
专家分:48
注 册:2011-6-15
结帖率:92.31%
已结贴  问题点数:20 回复次数:4 
关于asp自动编号并分页的问题
我想做一个有自动编号功能的文章发布系统,而这个自动编号不是由数据库读出来的,而是能够在前台自动调整显示。也就是说我在数据库中删除其中的任何一条记录,都不会影响到自动编号。。请哪位高手帮帮忙..菜鸟在此谢过了。。。。

这里为第一页所显示的内容:

 1. 这里是文章一的标题及其内容。
 2. 这里是文章二的标题及其内容。
 3. 这里是文章三的标题及其内容。
 4. 这里是文章四的标题及其内容。
 5. 这里是文章五的标题及其内容。
 6. 这里是文章六的标题及其内容。
 7. 这里是文章七的标题及其内容。
 8. 这里是文章八的标题及其内容。
 9. 这里是文章九的标题及其内容。
 10. 这里是文章十的标题及其内容。

页次 1/10 共200条记录 首页 1 2 3 4 5 6 7 8 9 10 下十页 尾页 转到第 1 页

以下为第二页所显示的内容:

 11. 这里是文章十一的标题及其内容。
 12. 这里是文章十二的标题及其内容。
 13. 这里是文章十三的标题及其内容。
 14. 这里是文章十四的标题及其内容。
 15. 这里是文章十五的标题及其内容。
 16. 这里是文章十六的标题及其内容。
 17. 这里是文章十七的标题及其内容。
 18. 这里是文章十八的标题及其内容。
 19. 这里是文章十九的标题及其内容。
 20. 这里是文章二十的标题及其内容。

页次 2/10 共200条记录 首页 1 2 3 4 5 6 7 8 9 10 下十页 尾页 转到第 2 页

依次往下排 ......

若在其中删除两条记录

5. 这里是文章五的标题及其内容。
12. 这里是文章十二的标题及其内容。

则显示为

这里为第一页所显示的内容:

 1. 这里是文章一的标题及其内容。
 2. 这里是文章二的标题及其内容。
 3. 这里是文章三的标题及其内容。
 4. 这里是文章四的标题及其内容。
 5. 这里是文章六的标题及其内容。
 6. 这里是文章七的标题及其内容。
 7. 这里是文章八的标题及其内容。
 8. 这里是文章九的标题及其内容。
 9. 这里是文章十的标题及其内容。
 10. 这里是文章十一的标题及其内容。

页次 1/10 共200条记录 首页 1 2 3 4 5 6 7 8 9 10 下十页 尾页 转到第 1 页

以下为第二页所显示的内容:

 11. 这里是文章十三的标题及其内容。
 12. 这里是文章十四的标题及其内容。
 13. 这里是文章十五的标题及其内容。
 14. 这里是文章十六的标题及其内容。
 15. 这里是文章十七的标题及其内容。
 16. 这里是文章十八的标题及其内容。
 17. 这里是文章十九的标题及其内容。
 18. 这里是文章二十的标题及其内容。
 19. 这里是文章二十一的标题及其内容。
 20. 这里是文章二十二的标题及其内容。

页次 2/10 共200条记录 首页 1 2 3 4 5 6 7 8 9 10 下十页 尾页 转到第 2 页

搜索更多相关主题的帖子: 文章 记录 数据库 
2011-10-17 17:18
编程的乐趣
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:229
专家分:1027
注 册:2011-4-4
得分:10 
2011-10-17 18:57
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
得分:10 
程序代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<!--#include file="CONDB.inc"-->
<!--引用数据库连接文件-->
<!--#include file="Cls\WebSiteSetInf.asp"-->
<%
   '声明数据库记录集对象
   Dim rsano
   Dim oWebI
   '创建数据库记录集对象
   Set rsano=Server.CreateObject("ADODB.Recordset")
   '设定数据库记录集游标类型
   rsano.cursortype=3
   '打开记录集对象
   rsano.Open "select * From ANOUCE ORDER BY AnnounceTheDate DESC",con
   '设定每页显示记录数
   rsano.pagesize=25
   '得到请求的页号
   page=clng(request("page"))
   IF request("page")<>"" then
     page=clng(request("page"))
   Else
     page=1
   End IF
   IF page<1 Then page=1
   If page>rsano.pagecount Then page=rsano.pagecount
   rsano.absolutepage=page
   '网页样式初始化代码
   Dim PageStyleT
   Set oWebI=New WebSetInf
   Set PageStyleT=New PageStyle
   Call QueryStyle("网站公告页面",PageStyleT)
%>
<title><%=oWebI.WebName%>-网站公告页面</title>
<!--去除超连接下划线样式表和字体大小设定代码-->
<style type="text/css">
<!--
  <%=PageStyleT.StyleString%>
-->
</style>
<STYLE type=text/css>
A {
    TEXT-TRANSFORM: none; TEXT-DECORATION: none
}
UNKNOWN {
    TEXT-DECORATION: underline
}
.style22 {font-size: 12px}
.style16 {font-size: 14px}
BODY {
    background-color: <%=PageStyleT.BackGround%>;
}
</STYLE>
</head>

<BODY>

<table width="294" height="46" border="0" cellspacing="0">
  <tr>
    <td width="338"><div align="center" class="style22">公告标题</div></td>
    <td width="95"><div align="center" class="style22">发布日期</div></td>
  </tr>
  <%
  '定义循环变量
  dim iPage
  For iPage=1 to rsano.Pagesize
   'recno=(page-1)*rsano.pagesize+ipage
   '记录自动编号计算公式
   '(当前页-1)*每页记录数+当前页当前记录编号
   Response.Write("<tr>")
     Response.write("<td><span class=style16><a href=announceview.asp?anbh="&rsano.Fields(0).Value&" target=_self>"&rsano.Fields(1).Value&"</a></span></td>")
     Response.Write("<td><span class=style22>"&FormatDateTime(rsano.Fields(4).Value,2)&"</span></td>")
   Response.Write("</tr>")
   rsano.MoveNext
   IF rsano.EOF Then
      Exit For
   End If
  Next
  %>
</table>
<table width="293" border="0">
  <tr>
  <%
  '翻页控制代码
  IF page<>1 Then
    Response.Write("<td><span class=style22><a href=announce.asp?page=1>第一页</a></span></td>")
    Response.Write("<td><span class=style22><a href=announce.asp?page="&(page-1)&">上一页</a></span></td>")
  Else
    Response.Write("<td><span class=style22>第一页</span></td>")
    Response.Write("<td><span class=style22>上一页</span></td>")
  End IF   
  IF page<>rsano.pagecount then
    Response.Write("<td><span class=style22><a href=announce.asp?page=" & (page+1) & ">下一页</a></span></td>")
    Response.Write("<td><span class=style22><a href=announce.asp?page=" & rsano.pagecount & ">最后一页</a></span></td>")
  Else
    Response.Write("<td><span class=style22>下一页</span></td>")
    Response.Write("<td><span class=style22>最后一页</span></td>") 
  End IF
  %>
    <td><span class=style22><%=rsano.pagecount%></span></td>
    <td><span class=style22>当前第<%=page%></span></td>
  </tr>
</table>
<%
'网页对象析构代码
Set PageStyleT=Nothing
rsano.Close
con.Close
Set rsano=Nothing
Set con=Nothing
Set oWebI=Nothing
%>
</body>
</html>
   'recno=(page-1)*rsano.pagesize+ipage
   '记录自动编号计算公式
   '(当前页-1)*每页记录数+当前页当前记录编号
  这个就是达到LZ想要的效果的算法

[ 本帖最后由 yms123 于 2011-10-17 19:33 编辑 ]
2011-10-17 19:31
kombel
Rank: 2
等 级:论坛游民
帖 子:69
专家分:48
注 册:2011-6-15
得分:0 
回复 3楼 yms123
嗯  我这试试效果
2011-10-18 10:09
kombel
Rank: 2
等 级:论坛游民
帖 子:69
专家分:48
注 册:2011-6-15
得分:0 
有没有具体的方法  版主能不能写一个啊
程序代码:
<!--#include file="Admin_check.asp"-->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>产品信息</title>
<link href="css/index.css" rel="stylesheet" type="text/css" />

<script language="javascript">
function CheckAll(form)
{ ///定义函数checkall,参数为form

for (var i=0;i<form.elements.length;i++) 

///循环,form.elements.length得到表单里的控件个数
{ 

///把表单里的内容依依付给e这个变量
var e = form.elements[i];
if (e.name != 'chkall')
e.checked = form.chkall.checked;
}
}
</script>
<script>
function btn_ck_bh_Click()
{
var cx = document.form1.cxsj.value;
form1.action ="index.asp?cx="+cx;
}
</script>
<style type="text/css">
<!--
.STYLE1 {color: #FF0000}
-->
</style>
<style type="text/css">

.thumbnail{
position: relative;
z-index: 0;
}

.thumbnail:hover{
background-color: transparent;
z-index: 50;
}

.thumbnail span{ /*CSS for enlarged image*/
position: absolute;
background-color: lightyellow;
padding: 1px;
left: -1000px;
border: 1px dashed gray;
visibility: hidden;
color: black;
text-decoration: none;
}

.thumbnail span img{ /*CSS for enlarged image*/
border-width: 0;
padding: 2px;
}

.thumbnail:hover span{ /*CSS for enlarged image on hover*/
visibility: visible;
top: 0;
left: 55px; /*position where enlarged image should offset horizontally */

}

</style>
</head>
<body bgcolor="#ffffff">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<div id="all" align="center">
<div id="top" align="center">
<table border="0" cellspacing="0" width="88%" style="word-break:break-all" align="center">
    <tr>
      <td width="778" align="center" colspan="7" height="193" valign="bottom"><form method="POST" name="form1" action=index.asp>
         <span class="STYLE1">输入搜索内容:</span>
            <input type="text" name="cxsj" size="20">
            <input type="submit" value="提交" name="B1" language="javascript" onClick="btn_ck_bh_Click()">
              <input type="reset" value="重写" name="B2"> <input type="button" name="Submit2" value="产品信息录入" onClick="JavaScript:window.location='product.asp'" />
          
      </form></td>
    </tr>
  </table>
</div>
<div id="content">

 
  <form id="form2" name="form2" method="post" action="delete.asp" onSubmit="return confirm('确定删除吗?')"/>
<table border="1" cellspacing="0" bgcolor="#F0F8FF" bordercolorlight="#4DA6FF" bordercolordark="#ECF5FF" width="88%" style="word-break:break-all" align="center">
<tr>
  <td align="center">&nbsp;</td>
  <td align="center">产品编号</td>
   <td align="center">产品预览</td>
   <td align="center">录入</td>
   <td align="center">操作</td>
  </tr>
<%
'数据库查询
'获得搜索内容
cx = request("cx")
dim pageCount
'把page转换成整数
page = cint(request("page"))
set conn=server.createobject("adodb.connection")'
set rs=server.createobject("adodb.recordset")
conn.open "DBQ=" & server.mappath("/Data/ds.mdb") & ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};" 

' 获取产品的名字记录集(从 news表中)
if cx <> "" then
sql = "select * from sen where conno like '%"&cx& "%' order by id desc"
else
sql ="select * from sen order by id desc"
end if
rs.open sql,conn,3,3
'如果没有数据记录
if rs.bof then
errmsg=errmsg+"<br>"+"<li>"+keyword+"没有记录,请返回!!"
response.write errmsg
response.end
end if 

' 设置记录集在每页的总行数,也就是 PageSize属性
RS.PageSize=20
'把rs.pageCount转换成整数和page才能作比较
pageCount = cint(rs.pageCount)
' 设置当前的页号( AbsolutePage属性)
if page = 0 then
page =1
end if
RS.AbsolutePage = page
x=1
' 显示当前页中的所有记录( PageSize中设置的行数) 

    '(当前页-1)*每页记录数+当前页当前记录编号
dim iPage
For iPage=1 to rs.Pagesize

 recno=(page-1)*rs.pagesize+ipage
WHILE NOT RS.EOF AND NumRows<RS.PageSize

%>
<tr onMouseOver="this.bgColor='#99ccff'" onMouseOut="this.bgColor=''">
<td width="1%" nowrap="nowrap"><input name="checkbox" type="checkbox" id="id" value="<%=rs("id")%>" /><%=recno%></td>
<td width="8%"><p align="center"><%=rs("conno")%></td>
<td width="20%" align="center"><a class="thumbnail" href="view.asp?id=<%=rs("id")%>" target="_blank"><%=rs("name")%><span><img src="<%=rs("img")%>" alt="<%=rs("name")%>"  width="110" border="0"></span></a></td>
<td width="8%"><p align="center"><%=rs("author")%></td> 

<td width="20%" align="center"><%if rs("info")=2 then%><%else%><%if rs("info")=1 then%><a href="costmod.asp?id=<%=rs("name")%>"  target="_blank">修改成本</a><%else%><a href="cost.asp?id=<%=rs("id")%>"  target="_blank">添加成本</a><%end if%><%end if%>&nbsp;<a href="costlist.asp?id=<%=rs("name")%>"  target="_blank">查看成本</a>&nbsp;<a href="edit.asp?id=<%=rs("id")%>"  target="_blank">修 改</a></td>
</tr>
<%RS.MoveNext
NumRows=NumRows+1
WEND
next
%>
<tr onMouseOver="this.bgColor='#99ccff'" onMouseOut="this.bgColor=''">
<td  colspan="4"><input name="chkall" type="checkbox" id="chkall" value="all" onClick="CheckAll(this.form)" />
  删? &nbsp;&nbsp;<input type="submit" name="Submit" value="删除" /></td>
<td width="20%">产品总数:
  <span class="STYLE1"><%Response.Write(rs.RecordCount)
%></span></td>
</tr>
<tr>
<td width="105%" align="center" colspan="5">
<p align="center"><FONT color=#333333><%=PageCount%>页 第<%=page%>页★
<%if page=1 then%>首页<%end if%>
<%if page>1 then%>
<A HREF="index.asp?page=1&cx=<%=cx%>"> 首页</A>
<%end if%><%if page>1 then%><A HREF="index.asp?page=<%=page-1%>&cx=<%=cx%>"><%end if%>上一页</a> 
<%
dim pagewhere
dim p
p = 1
'把pagewhere转换成整数
'pagewhere = cint(request("pagewhere"))
pagewhere = pageCount
if pagewhere>0 then
for p=1 to pagewhere
if p <> page then%>
<A HREF="index.asp?page=<%=p%>&cx=<%=cx%>"><%=p%></a> 
<%end if
if p =page then%>
<%=p%> 
<% end if
next
end if%>
<%if page < PageCount then%>
<A HREF="index.asp?page=<%=page+1%>&cx=<%=cx%>">
<%end if %>下一页</A><%if page=PageCount then%>尾页
<%end if%>
<%if page<PageCount then%>
<A HREF="index.asp?page=<%=PageCount%>&cx=<%=cx%>"> 尾页</A>
<%end if%>
</FONT></p></td> </tr> <tr>
<td width="105%" align="center" colspan="7">搜索内容:<%=cx%></td>
</tr>
</table>
</center></form></div>
<div id="footer"><table border="1" cellspacing="0" bgcolor="#F0F8FF" bordercolorlight="#4DA6FF" bordercolordark="#ECF5FF" width="88%" style="word-break:break-all" align="center">
<tr>
<td width="778" align="center" colspan="7">©CopyRight 2011 znkj.cc <a href="http://bbs.znkj.cc">众诺科技</a> All Rights Reserved. Powered By znkj.cc</td>
</tr>
</table>
</div></div>
</body></html>
<%
rs.close
Set rs=nothing
conn.close
set conn=nothing
%>
但是为什么这样的啊
2011-10-18 11:16



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




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

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