当前位置: 首页 > 图文教程 > 网络编程 > ASP > 给万博系统的新闻系统增加分页功能[配有详细说明]

ASP
asp实现取得数组中的最大值的代码
asp 将日期格式化为需要的格式
asp 下产生任意位数随机密码的代码
asp下返回以千分位显示数字格式化的数值
asp重定向页面的方法总结
asp下去除数组中重复的项的方法
asp下实现 重新排序数字数组的代码
asp 验证输入网址是否有效并可以访问 与正则验证输入网址
asp验证Ip格式的函数
asp实现生成由数字,大写字母,小写字母指定位数的随机数
asp 格式化sql中的like字符串
asp 实现显示所有的服务器变量值的函数
asp 取得用户真实IP,对代理地址仍然有效的函数
asp 通用数据库连接过程函数
asp 字符串截取函数
asp下实现格式化文件大小以MB显示的函数
asp 下用正则表达式检测邮箱格式的函数
asp 实现检测字符串是否为纯字母和数字组合的函数
asp代码实现检测组件是否安装的函数
asp通过JMAIL实现通用发送函数

ASP 中的 给万博系统的新闻系统增加分页功能[配有详细说明]


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 101 ::
收藏到网摘: n/a

给万博系统的新闻系统增加分页功能,无需修改数据库,只需改变一个文件,就可以了.
如果将后台的Webediter增加一个插入分页符,那就更完美了.我还没加这个.
本例是在后台录入新闻时,在需要分页的位置插入分页符: {$html_page$} 就可以了.
代码如下,有详细说明
newsshow.asp
<!--#include file="siteinfo.asp"-->
<HTML>
<HEAD>
<TITLE><%=sitename%></TITLE>
<META HTTP-EQUIV="Content-Type" C>
<link href="images/CSS.css" type=text/css rel=stylesheet>
</HEAD>
<body topmargin="0">
<table width="780" border="0" cellspacing="0" cellpadding="0">
<tr>
<td colspan="3"><!--#include file="top.asp"--></td>
</tr>
<tr>
<td width="145" align="left" valign="top"><!--#include file="left.asp" --></td>
<td align="left" valign="top" ><table width="625" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="17" height="20"> </td>
<td width="598"> </td>
<td width="10"> </td>
</tr>
<tr >
<td width="17"><% idd=trim(request.querystring("id"))
set rsr=server.createobject("adodb.recordset")
sql="select * from News where Putout=true and id="&idd
rsr.open sql,conn,1,3
if not rsr.eof then
Newcontent=rsr("Newcontent")
Newtitle=rsr("Newtitle")
Putman=rsr("Putman")
kig=rsr("kig")
kig=kig+1
addtime=rsr("addtime")
rsr("kig")=kig
rsr.update
else
response.Write"找不到记录,发生导常错误,请联系管理员!"
end if
'这里要处理接收到的分页参数,以此来进行显示第几页的内容
'下面这两句就是如果没有page这个参数传来就让变量pageNum取显示第一页的值:0
If Request("page")="" Then
pageNum=0
'否则就给变量赋值为传递来的page里的参数,来显示其他页
Else
pageNum=Request("page")
End if
%>
<%
'如果加了可选执行UBB代码,可以加上下面的代码
'rs("NoUBB")是数据库里关于禁用UBB的字段,0为禁用,1为执行
'If rsr("NoUBB")=0 then
'为避免和文章内容相连出现错误,用Replace函数把分页代码“{$html_page$}”的前后各加一个全角的
'rs("content")是数据库里正文的字段,在这里加上UBB或者禁用UBB
Content=Replace(Newcontent,"{$html_page$}"," {$html_page$} ")
'Elseif rsr("NoUBB")=1 then
'Content=Replace((ubb(Newcontent)),"{$html_page$}"," {$html_page$} ")
'End if
%></td>
<td height="22" align="center" class="NEWS_title"><%=Newtitle%><br>
<hr size="1" noshade color="#666666"></td>
<td width="10"> </td>
</tr>
<tr>
<td rowspan="3"> </td>
<td height="303" valign="top" ><%
'这里就是关键了
'我们用split函数将文章分段取出存入变量content
ContentStr=split(Content,"{$html_page$}")
'按照刚才从URL参数中取得的要显示那面的那个变量,就循环显示一页
For i=pageNum to pageNum
%>
<!--这里将是文章正文内容-->
<%=ContentStr(i) %>
<% Next %></td>
<td rowspan="3"> </td>
</tr>
<tr>
<td height="8" valign="top"> </td>
</tr>
<tr>
<td height="8" align="center" valign="top">本文共分
<%
'分页的地方,用ubound(ContentStr)取得文章一共分为几页,注意这里是从0开始,所以总页数需要加1
For p = 0 to ubound(ContentStr)
'链接还是本页面,只不过文章ID参数后面还要加上一个分页的参数:page
%>
<a href="newsshow.asp?ID=<%=request("ID")%>&page=<%=p%>" class=""><%=p+1%></a>
<% Next %>页</td>
</tr>
<tr>
<td height="40"> </td>
<td height="60" valign="bottom"><table width="100%" border="0" cellpadding="5" cellspacing="1" bgcolor="#CECECE">
<tr bgcolor="#FFFFFF" >
<td width="16%" align="right" bgcolor="#CECECE" >发 布 者:</td>
<td width="20%" bgcolor="#FFFFFF"> <%=Putman%></td>
<td width="15%" align="right" bgcolor="#CECECE">添加时间:</td>
<td width="20%" bgcolor="#FFFFFF"> <%=addtime%></td>
<td width="15%" align="right" bgcolor="#CECECE">点 击 数:</td>
<td width="15%"><%=kig%></td>
</tr>
</table></td>
<td> </td>
</tr>
</table></td>
<td> </td>
</tr>
<tr>
<td colspan="3"><!--#include file="bot.asp"--></td>
</tr>
</table>
</body>
</html>