在这一课,我们将探讨内容显示与内容分页的问题。
这也是WAP页面上经常用到的一个操作!该功能的重要性不亚于文章列表分页,因为手机内存的限制,篇幅太长的文章可能导致手机死机或者显示异常的现象。
新建NewsShow.asp文件,将文件的编码和内容的编码转成UTF-8,将文件的编码保存为UTF-8(文件--另存为--编码:选择“UTF-8”--保存)
复制以下代码:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
Response.ContentType="text/vnd.wap.wml;charset=UTF-8" ' 将文件的格式转换成wml,编码为UTF-8
%>
(由于文章篇幅比较长,截图只截取了上面部分),很明显,这样的文章在电脑上都显得过长,更不用说在手机上看了,所以,接下来,我们将要对文章进行分页!
在content=rs(2)和Response.Write (rs(1)&"
=*=*=*=*=*=
"&Replace(content,chr(13),"
"))插入以下代码:
Dim gopage,PS,conlen,page,pagecount,ys,startc
PS = 300
conlen=len(content) ' 获取内容的长度(字数)
page=request.QueryString("page")
if page<=0 or page="" then page=1
pagecount=cint(conlen/PS) ' 计算出页数(记住,cint是对数值变量四舍五入取整,这也直接关系到下面余数
加多一页的问题)
ys=conlen mod PS ' 取余数
if ys<=PS/2 and ys>0 then
pagecount=pagecount+1 ' 当余数大于内容长度的一半并余数大于0的时候,页数加1(因为上面取页数的时
候是四舍五入,所以这里把PS除于2)
end if
startc=PS*(page-1)+1 ' 计算出每页截取字符号的位置
content=mid(content,startc,PS) ' 节取内容
再刷新地址:">
接下来,自然就要来添加翻页链接了。在Response.Write (rs(1)&"
=*=*=*=*=*=
"&Replace(content,chr(13),"
")和Else之间插入以下代码:
gopage="NewsShow.asp?ID="& ID &"&" ' 定义翻页地址变量
if pagecount>1 then response.Write "
=*=*=*=*=*=
当前为第"&page&"/"&pagecount&"页
"
if page-pagecount<0 then response.write "
下一页- "
if page>1 then response.write "
上一页- "
if pagecount>2 then response.write "
maxlength=""5""/>
[跳转到该页] "
保存文件,刷新地址:">
的内容页面,内容被截断分页显示,在看看地址栏显示的是:localhost/NewsShow.asp?ID=2&page=2,多了page=2。
最后,加上换行符号和返回连接,内容显示的页面也就完成了!
=*=*=*=*=*=
返回新闻列表 返回网站首页 保存文件,再传到空间里,用手机访问测试一下吧!