|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
对用户来说可预见费用、节约费用,可以做到花少钱办大事。由于省去了购买软件和硬件等的前期费用,用户可以租用较高级的应用软件。ASP的收费是根据软件的类型、客制化程度、用户数量、服务期限来定的,对客户来说这笔费用是可以预见的。方便于客户应用软件的升级。分页|分页人人都晓得,ASP有着壮大的数据库操纵才能,这与她能便利的挪用ActiveX工具是密不成分的。上面我给人人先容一种ASP使用ADO工具完成对数据库纪录分页显现的办法。以下代码均在WIN98+PWS+MSACCESS情况下经由过程。
在这里我次要经由过程ADO工具会合的Recordset工具来完成各类数据库操纵的。先先容几个用于分页显现的Recordset属性。
PageSize:每页显现的纪录数。
PageCount:依据用户设好的PageSize和表中的总纪录数,体系主动算出总页数。
RecordCount:表中的总纪录数。
AbsolutePage:暗示以后页码。如将AbsolutePage属性设为3,则以后纪录移至第3页第1条(也就是第31条)。
看到Recordset有了这几个属性后,信任人人也都以为做一个分页显现的程序是很复杂的。上面讲一下思绪,一切完成这一功效的代码都放在display.asp中,按实行的按次分离是:翻开数据库及表、读取用户请求的显现体例、设定好PageSize和AbsolutePage、将内容输入到扫瞄器、设定好导航条。以下是代码:
<%---------------------------翻开数据库及表
setconn=server.createobject("ADODB.Connection")
filepath=server.mappath("abc.mdb")-------假定数据库文件是"abc.mdb"
conn.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&filepath
setrs=server.createobject("ADODB.Recordset")
rs.open"main",conn,3,2-------假定表的名字是"main"
%>
<%---------------------------读取用户请求的显现体例(经由过程参数传送)
line=cint(request("line"))
page=cint(request("page"))
%>
<%---------------------------按用户请求设定好显现体例
rs.PageSize=line
rs.AbsolutePage=page
%>
<%---------------------------显现内容%>
<tablewidth="100%"border="1">
<tr>
<%fori=0tors.Fields.Count-1%>
<td><%=rs.Fields(i).name%></td>
<%next%>
</tr><%-------以上部分显现表头,即字段名%>
<%fori=1tors.PageSize%>
<tr>
<%forj=0tors.Fields.Count-1%>
<td><%=rs.Fields(j).value%></td>
<%next%>
</tr>
<%rs.movenext%>
<%ifrs.eofthenexitfor%>
<%next%><%-------以上部分显现表的内容%>
</table>
<%---------------------------导航条%>
<tablewidth=100%><tr>
<td>
<%ifpage<>1then%>
<ahref=display.asp?page=1&line=<%=line%>>第一页</a>
<%else%>第一页<%endif%>
</td>
<td>
<%ifpage>1then%>
<ahref=display.asp?page=<%=page-1%>&line=<%=line%>>前一页</a>
<%else%>前一页<%endif%>
</td>
<td>
<%ifpage<rs.PageCountthen%>
<ahref=display.asp?page=<%=page+1%>&line=<%=line%>>下一页
<%else%>下一页<%endif%>
</td>
<td>
<%ifpage<>rs.PageCountthen%>
<ahref=display.asp?page=<%=rs.PageCount%>&line=<%=line%>>最初一页</a>
<%else%>最初一页<%endif%>
</td><%-------以上四项都必要举行判别:假如在第一页就不供应“第一页”和“前一页”的链接
-------假如在最初一页就不供应“最初一页”和“后一页”的链接%>
<td>
<formmethod="POST"action="display.asp?line=<%=line%>">
请输出页码:<inputtype="text"name="page"size="3"value="<%=page%>">
</form>
</td>
<td>
<formmethod="POST"action="display.asp?page=<%=page%>">
请设定每页<inputtype="text"name="line"size="3"value="<%=line%>">行
</form>
</td><%-------由于两个表单都只要一个表单域,以是没有供应发送按钮,间接打回车就好了%>
<td>
第<%=page%>页/总<%=rs.PageCount%>页
</td>
</tr></table>
这只是一个最基础的程序,没有举行优化处置,也另有一些bug,上面我们一同来使它更“完善”一些。
</p>国内有些大的CRM厂商的ASP就写得不错.无论是概念还是它里面用JAVASCRIPT的能力.并不是说现在的程序员用了ASP.NET来写程序就可以说自己高档了 |
|