仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2556|回复: 20
打印 上一主题 下一主题

[学习教程] ASP网页设计项目中的模块

[复制链接]
飘灵儿 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:34:36 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
我想详细了解ASP整站代码与PSP整站代码有什么优缺点,那个更好,更安全,更用容易维护,和管理。。。项目   在大型的ASP项目中,良多的页面都触及到翻页功效。假如每一个页面都写一个翻页的法式的话,如许的任务即下降了任务效力,也晦气于工程的模块化,不克不及使代码重用。因而,把翻页如许的功效模块化是很有需要的。

设计办法:
1、挪用该模块时,只需求传递纪录集和每页显示的纪录的条数;
2、可以点击链接停止翻页,也能够直接输出页码,回车后翻页;
3、不要思索文件名,法式的每次翻页都能在以后页面。

想清晰了下面3个成绩,咱们的公共翻页模块就能够下手了。

<%
'+++++++++++++++++++++++++++++++++++++
'◆模块称号: 公共翻页模块
'◆文 件 名: TurnPage.asp
'◆传入参数: Rs_tmp (纪录集), PageSize (每页显示的纪录条数)
'◆输 出: 纪录集翻页显示功效
'+++++++++++++++++++++++++++++++++++++
'
Sub TurnPage(ByRef Rs_tmp,PageSize) 'Rs_tmp 纪录集 PageSize 每页显示的纪录条数;
Dim TotalPage '总页数
Dim PageNo '以后显示的是第几页
Dim RecordCount '总纪录条数
Rs_tmp.PageSize = PageSize
RecordCount = Rs_tmp.RecordCount
TotalPage = INT(RecordCount / PageSize * -1)*-1
PageNo = Request.QueryString ("PageNo")
'直接输出页数跳转;
If Request.Form("PageNo")<>"" Then PageNo = Request.Form("PageNo")
'假如没有选择第几页,则默许显示第一页;
If PageNo = "" then PageNo = 1
If RecordCount <> 0 then
Rs_tmp.AbsolutePage = PageNo
End If

'获得以后文件名,使得每次翻页都在以后页面停止;
Dim fileName,postion
fileName = Request.ServerVariables("script_name")
postion = InstrRev(fileName,"/")+1
'获得以后的文件称号,使翻页的链接指向以后文件;
fileName = Mid(fileName,postion)
%>
<table border=0 width='100%'>
<tr>
<td align=left> 总页数:<font color=#ff3333><%=TotalPage%></font>页
以后第<font color=#ff3333><%=PageNo%></font>页</td>
<td align="right">
<%If RecordCount = 0 or TotalPage = 1 Then
Response.Write "首页|前页|后页|末页"
Else%>
<a href="<%=fileName%>?PageNo=1">首页|</a>
<%If PageNo - 1 = 0 Then
Response.Write "前页|"
Else%>
<a href="<%=fileName%>?PageNo=<%=PageNo-1%>">前页|</a>
<%End If

If PageNo+1 > TotalPage Then
Response.Write "后页|"
Else%>
<a href="<%=fileName%>?PageNo=<%=PageNo+1%>">后页|</a>
<%End If%>

<a href="<%=fileName%>?PageNo=<%=TotalPage%>">末页</a>
<%End If%></td>
<td width=95>转到第
<%If TotalPage = 1 Then%>
<input type=text name=PageNo size=3 readonly disabled style="background:#d3d3d3">
<%Else%>
<input type=text name=PageNo size=3 value="" title=请输出页号,然后回车>
<%End If%>页
</td>
</tr>
</table>
<%End Sub%>

固然,人人可以把翻页的链接做成图片按钮,如许的话也面就加倍雅观了。

挪用办法:
1、在法式入手下手或要利用翻页的中央包括翻页模块文件;
2、界说变量:RowCount,每页显示的纪录条数
3、挪用翻页进程:Call TurnPage(纪录集,RowCount)
4、在Do While 轮回输入纪录集的前提中加上" RowCount > 0 " 前提
5、在轮回停止 "Loop前" 加上: RowCount = RowCount - 1

'-----------------------------------------------------
挪用典范:
文件名:News.asp

<%
Dim Conn,Rs_News
Set Conn = server.CreateObject("ADODB.CONNECTION")
Conn.Open "cpm","cpm","cpm"

Dim Sql
Sql = "Select * from News"
Set Rs_News = Server.CreateObject("ADODB.RECORDSET")
Rs_News.Open Sql,Conn,1,3 '获得的纪录集

'公共翻页模块入手下手%>
<!--#include file=../Public/TurnPage.asp-->
<%
Dim RowCount
RowCount = 10 '每页显示的纪录条数
Call TurnPage(Rs_News,RowCount)
'公共翻页模块停止%>

<table width=100%>
<tr>
<td>旧事编号</td>
<td>旧事题目</td>
<td>宣布日期</td>
<tr>
<%
If Not Rs_News.eof
Do while Not Rs_News.eof and RowCount>0
%>
<tr>
<td><%=Rs_News("ID")%></td>
<td><%=Rs_News("Name")%></td>
<td><%=Rs_News("Date")%></td>
<tr>
<%
RowCount = RowCount - 1
Rs_News.MoveNext
Loop
End If
%>


</p>  对用户来说可预见费用、节约费用,可以做到花少钱办大事。由于省去了购买软件和硬件等的前期费用,用户可以租用较高级的应用软件。ASP的收费是根据软件的类型、客制化程度、用户数量、服务期限来定的,对客户来说这笔费用是可以预见的。方便于客户应用软件的升级。
飘灵儿 该用户已被删除
沙发
 楼主| 发表于 2015-2-4 02:43:35 | 显示全部楼层
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-14 21:11

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表