详谈asp生成静态页方法
发布时间:2020-12-24 16:52:41 所属栏目:Asp教程 来源:网络整理
导读:div class="PostBody" p style="text-indent: 2em"生成静态页的好处不用说,当今大型网站,为缓解服务器端的压力许的的页面都改用了静态的页面,并利用AJAX技术动态地更新其中的部分内容,如广告等。 p style="text-indent: 2em" 一个简单的不用模板可以直接
'数据连接文件 <% On Error Resume Next'容错处理 Dim City'定义取得要生成页面的城市 City=Request.Querystring("City")'获取生成的城市酒店值从框架传过来的在后面将介绍 HtmlStartName=Request.Querystring("HtmlStartName")'获得生成htm文件名前缀 Dim sql'搜索字符串,这里我就直接打开表不用搜索变量了,搜索条件按自己写就可以 sql="select * from Hotel where [City] = '" & City & "' " Dim oRs'数据操作对象 Dim PageCounts'实现分页生成必须得知呀有多少页 Set oRs = Server.CreateObject("ADODB.Recordset") oRs.Open Sql,oConn,1,1'找开酒店等于City变量的表 oRs.pagesize=10'十个记录为一页 PageCounts=oRs.pagecount'得出要生成多少个页面,循环生成使用 Dim fs'定义fso文件对象 Dim folders'存放生成静态页的文件夹名称 Dim Filestart'定义生成htm文件前缀 Set fs=Server.CreateObject("Scripting.FileSystemObject") Dim i for i=1 to PageCounts'开始循环生成页面,也就是分页生成了 page=i oRs.absolutepage=i'页码 rowcount=oRs.pagesize'当页记录数 folders=server.mappath("CityHtml") if (fs.FolderExists(folders)) then'判断文件夹是否存在 else fs.CreateFolder(folders)'不存在则创建CityHtml文件夹 end if if i=1 then Filestart=HtmlStartName'如果为第一页则定义文件名为传值名.例如beijing则为beijing.htm else Filestart=HtmlStartName&i'如果第二页则为beijing+1例如有两页也就是i等于2则为 beijing2.htm如此类推...(.htm后缀就在后面加上) end if Dim files'定义生成文本文件名称变量 Dim filez'定义文件路径名称变量 files=Filestart&".txt"'本文件名称 filez=folders&""&"files'文本文件路径 '册除文件 Dim checkfile'检查文本文件是否已经存在,是则删除 checkfile=server.mappath("CityHtml"&Filestart&".htm")'检查htm文件是否已经存在,是则删除 if (fs.FileExists(checkfile)) then'检查htm文件是否已经存在,是则删除 Dim df'定义文件对象*删除文件使用* Set df=fs.GetFile(checkfile)'定义要册除的文件 df.delete'册除文件 end if'判断结束 Dim ts'定义写入文件对象 set ts = fs.createtextfile(filez,true) '开启写入文件内容**我在正文只简单写入酒店名称和静态数字分页显示** ts.write(" ts.write(""&vbcrlf) ts.write(""&vbcrlf) ts.write(""&vbcrlf) ts.Write(""&vbcrlf&_ ""&vbcrlf) '分页输出开始 '数字分页程序原理在这我就不多说了,不懂的朋友可在网上搜索一下 Dim page'当前页 Dim Page2'数字分页变量 Dim s'数字分页变量 if page=1 then ts.write (" [首 页] [前一页] ") else ts.write (" [首 页] 前一页 ") end if page2=(page-(page mod 10))/10 if page2<1 then page2=0 for s=page2*10-1 to page2*10+10 if s>0 then if s=cint(page) then ts.write (" ["& s & "]") else if s=1 then ts.write (" ["& s &"]") else ts.write (" ["& s &"]") end if end if if s=ors.pagecount then exit for end if end if next if cint(page)=ors.pagecount then ts.write (" [后一页] [尾 页]") else ts.write (" [后一页] [尾 页]") end if ts.write("") '分页输出结束 do while not ors.eof and rowcount>0 '输出酒店名称 ts.write(""&oRs.Fields("Chinese_Name")&""&vbcrlf) oRs.movenext rowcount=rowcount-1'当页记录数-1 loop ts.write(""&vbcrlf) ts.close set ts=nothing '释放对象 Dim EditFile'定义改写文件变量 Set EditFile = fs.GetFile(filez)'设置改写文件对象 EditFile.name= left(EditFile.name,len(EditFile.name)-4)&".htm" '改写文本文件成htm next'循环生成结束(分页生成) set EditFile=nothing '释放对象 set fs=nothing'释放对象 if err.number<>0 then '处理生成错误 Response.write (City&"更新时发生未知错误") else Response.Write(City&"酒店更新已完成 "&Now()) end if %> |
(编辑:青岛站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
相关内容
- iPhone X电池容量多大 iPhone X电池容量是多少
- 【创意餐厅设计排行榜】餐饮全案设计公司推荐排名-权威排行
- 华为申请新商标;云米发布2019年第三季度财报;第四届中国家
- 基站数超4.6万,深圳市宣布成为首个5G独立组网全覆盖城市
- iPhone 8发布会什么时候开始 iPhone 8发布会什么时候举行
- 在环保“去粗取精”的洗牌变革中,洞悉2020家居业3大变化
- 后国标时代的电动自行车 续航成大问题
- iPhone 7升级iOS 11.2.2会卡吗 iPhone 7 Plus升级iOS 11.2.
- 洗碗机销售超预期背后,博西家电以智能化、高端化引领行业发
- 无法在Web服务器上启动调试。未将项目配置为进行调试
站长推荐
热点阅读