|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。分页|分页一.关于参数传送。假设表中有46笔记录,然后我们在地点栏中敲进http.//localhost/display.asp?line=10&page=2(假定这是准确的路径)一定扫瞄器将给我们显现第二页的十笔记录。可是假如在地点栏中只敲进http.//localhost/display.asp,扫瞄器却给我们一个堕落信息。怎样办理呢?我们必需在读取这些参数时加一个判别,假如参数是空的,就赋给它一个初值,以防堕落。将“读取用户请求的显现体例”部分用以下代码取代:
<%
ifrequest("page")<>""then
page=cint(request("page"))
else
page=1-------假如参数page为空,就给它赋值1
endif
ifrequest("line")<>""then
line=cint(request("line"))
else
line=10-------假如参数line为空,就给它赋值10
endif
%>
二.参数的公道性成绩。假如我们在地点栏中敲进http.//localhost/display.asp?line=20&page=4会呈现甚么情形呢?扫瞄器报错。由于表中只要46笔记录,而我们要它以每页显现二十条,第四页的二十笔记录,也就是第六十一条到第八十笔记录。明显会堕落。一样情形还会呈现在导航条中,假如以后扫瞄器中显现的是以每页十条,第四页的内容,我们往设定它以每页二十条显现,一样也会堕落。办理办法仍是一样的,先判别一下参数的公道性,然后再设置显现体例。将“按用户请求设定好显现体例”部分用以下代码取代。
<%
ifpage>(rs.RecordCount-1)line+1then
-------经由过程盘算可知,最年夜页数=(总纪录数-1)每页行数+1
response.write("error!")-------假如参数分歧实践,输入"error!"
response.end-------停止程序
endif
rs.PageSize=line
rs.AbsolutePage=page
%>
三.考证表单域。导航条中的两个输出文本框输出的都必需是整数,不然也会堕落。我们能够使用FrontPage的考证表单域功效开完成,这里就未几说了。
四.优化。到今朝为止,这个程序另有一个弱点。在数据库的存取过程当中,最花工夫的要数是数据库的翻开和Recordset工具的创建,而这个程序每次实行城市翻开数据库及创建Recordset工具,极年夜的下降了效力,一旦会见量增年夜,这个程序也就是往了代价。办理的举措是:第一次实行程序时,翻开数据库及创建Recordset工具,并将这些存在session中,下次实行时间接将session中的值前往就好了。用以下代码取代“翻开数据库及表”部分。
<%
ifnotisobject(session("conn"))then
setconn=server.createobject("ADODB.Connection")
filepath=server.mappath("abc.mdb")
conn.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&filepath
setrs=server.createobject("ADODB.Recordset")
rs.open"main",conn,3,2
setsession("conn")=conn
setsession("rs")=rs
else
setconn=session("conn")
setrs=session("rs")
endif
%>
至此,一个对照“完善”的程序完成了。
</p>使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。 |
|