asp 内容按行数或字数分页

ASP文章按行数自动分页代码
< %
' 连接数据库:
dim conn,connstr
on error resume next

set conn = server.createobject( " ADODB.CONNECTION " )
connstr
= " Provider=Microsoft.Jet.OLEDB.4.0;DataSource= " & Server.MapPath( " ../data/alibaba.mdb " )
conn.openconnstr

if err.number <> 0 then
response.writeerr.description
err.clear
response.end
end if

sub connclose()
conn.close()
set conn = nothing
endsub

' 读取数据:
dim rs,sql,content,title,newsid
id
= 200 ' trim(request(id))'上页传来的ID值,为了调试方便此ID值临时赋为1
set rs = server.createobject( " adodb.recordset " )
sql
= " select*fromnewswherenewsid= " & id & ""
rs.opensql,conn,
1 , 1
if not (rs.eof and rs.bof) then
content
= rs( " content " ) ' 读取内容
title = rs( " title " ) ' 读取标题
end if

if err.number <> 0 then
response.writeerr.description
err.clear
response.end
end if
rs.close
set rs = nothing

call connclose()

' 分页处理部分:
' ---------------------主代码开始--------------------------
dim page,pagecount,thispage,linenum,allline
const pageline = 10 ' 每页显示10行
linenum = split (content, " <br> " ) ' 本例为计算字符串<br>标记的个数
allline = ubound (linenum) + 1 ' 全文<br>(换行标记)总数
pagecount = int (allline pageline) + 1 ' 计算总页数
page = request( " page " )

if isempty (page) then
thispage
= 1
else
thispage
= cint (page)
end if

response.write
" <b> " & title & " </b><hr> "
for i = 0 to allline
if i + 1 > thispage * pageline - pageline and i < thispage * pageline then
response.write
"" & linenum(i) & " <br> " ' 输出分页后的内容
end if
next
response.write
" <br><hr> "
response.write
" <palign='center'>总共 " & allline & " " & pagecount & " 页每页 " & pageline & " "
for i = 1 to pagecount
if thispage = i then
response.write
"" & i & " "
else
response.write
" <ahref='?page= " & i & " &id= " & id & " '> " & i & " </a> "
' 输出所有分页链接
end if
next
' ---------------------主代码结束--------------------------
% >

常见分页代码
< %
If rs1.recordcount > 0 Then ' 记录集不为空则处理记录
rs1.pagesize = 20 ' 设置每页显示的记录数
num = rs1.recordcount ' 记录总数
pagenum = rs1.pagecount ' 页总数
page = request( " page " ) ' 获取页码的原始信息
'
处理页码原始信息的开始!
If page <> "" then
page
= cint (page)
if err.number <> 0 then
err.clear
page
= 1
end if
if page < 1 then
page
= 1
end if
else
page
= 1
End if
if page * rs1.pagesize > num and not ((page - 1 ) * rs1.pagesize < num) then
page
= 1
end if
' 处理页码原始信息的结束!设置当前页码
rs1.absolutepage = page
%
>
< ! -- 判断当前页是否是最后一页,并根据判断设置记录的重复显示 -->
< %
if page <> pagenum then
lablenum
= rs1.pagesize
else
lablenum
= num - (page - 1 ) * rs1.pagesize
end if
for i = 1 to lablenum
%
>
< trbgcolor = " #FFFFFF " >
< tdheight = " 25 " >< divalign = " center " >< % = (rs1.Fields.Item( " id " ).Value)% ></ div ></ td >
< td >< divalign = " center " >< % = (rs1.Fields.Item( " 名称 " ).Value)% ></ div ></ td >
< td >< divalign = " center " >< % = (rs1.Fields.Item( " 地址 " ).Value)% ></ div ></ td >
< td >< divalign = " center " >< % = (rs1.Fields.Item( " 类别 " ).Value)% ></ div ></ td >
< td >< divalign = " center " >< % = (rs1.Fields.Item( " 最后修改 " ).Value)% ></ div ></ td >
< td >< divalign = " center " >< % = (rs1.Fields.Item( " 修改人 " ).Value)% ></ div ></ td >
</ tr >
< %
rs1.movenext
next
%
>
< ! -- 当前页的记录显示结束,以下代码为记录集分页链接代码 -->
< tablewidth = " 70% " border = " 0 " align = " center " cellpadding = " 0 " cellspacing = " 0 " >
< tr >
< tdheight = " 35 " >
< divalign = " right " >
< fontcolor = " #333333 " >
共有
< % = num% > 个链接|
< ahref = linkadmin.asp?page = 1 > 首页 </ a > |
< % if page > 1 then % >< ahref = linkadmin.asp?page =< % = page - 1 % >>< % end if % > 上一页 </ a > |
< % if page < pagenum then % >< ahref = linkadmin.asp?page =< % = page + 1 % >>< % end if % > 下一页 </ a > |
< ahref = linkadmin.asp?page =< % = pagenum% >> 尾页 </ a > |
页次:
< % = page% >/< % = pagenum% > 页|
< % = pagenum% >
</ font >
</ div >
</ td >
</ tr >
</ table >
< ! -- 记录集分页链接代码结束,记录集为空时执行以下代码 -->
< % else % >
< trbgcolor = " #FFFFFF " >
< tdheight = " 25 " colspan = " 6 " >< divalign = " center " >< %response.Write( " 没有结果可显示! " )% >
</ div ></ td >
</ tr >
< %
end if
rs1.Close()
Set rs1 = Nothing
%
>



网页按字数自动分页代码
< ! -- #includefile = " admin2008exe/conn2008set1.asp " -->

< %
id
= request.querystring( " id " )
sql10
= " select*fromshop_bookswhereid= " & id
set rs = conn2008set.execute(sql10)
' =================================================
'
过程名:AutoPagination
'
作用:采用自动分页方式显示文章具体的内容
'
参数:无
'
=================================================
Call AutoPagination()

sub AutoPagination()
dim ArticleID,strContent,CurrentPage
dim ContentLen,MaxPerPage,pages,i,lngBound
dim BeginPoint,EndPoint
ArticleID
= rs( " id " )
strContent
= rs( " nrjg " )
ContentLen
= len (strContent)
CurrentPage
= trim (request( " ArticlePage " ))
if ContentLen <= rs( " newshop " ) then
response.writestrContent
response.write
" </p><palign='center'><fontcolor='red'><b>[1]</b></font></p> "
else
if CurrentPage = "" then
CurrentPage
= 1
else
CurrentPage
= Cint (CurrentPage)
end if
pages
= ContentLen rs( " newshop " )
if rs( " newshop " ) * pages < ContentLen then
pages
= pages + 1
end if
lngBound
= ContentLen '
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值