利用XMLHTTP批量生成静态页的函数

生成静态页的方法有很多种,我比较喜欢用xmlhttp的方法生成,因为我不用考虑很多东西,我只要把动态的asp页面编写好就行了。

程序代码 程序代码

<%
sub asp2html(aspFile,para,bId,eId,htmFile)
'aspFile 要转换的asp文件,可以如common/full.asp
'para asp文件后的参数,比如full.asp?wId=6,则para为wId
'bId 开始的id
'eId 结束的id
'htmFile 生成的静态页(html页) 的文件的前面部分,次函数将生成htmfile+id.htm形式的静态页,可以如common/htmlfile
dim Item_id,id,FileName,FilePath,asp_Url
For i=bId To eId
Item_id = i
if i=0 then
FileName = htmFile&".htm"
else
FileName = htmFile&Item_id&".htm"
end if
FilePath = Server.MapPath(FileName)
asp_Url = "http://"
asp_Url = asp_Url&Request.Servervariables("SERVER_NAME")&"/"&Aspfile
asp_Url = asp_Url&"?"& para &"="&Item_id
dim objXmlHttp
set objXmlHttp = Server.CreateObject("Microsoft.XMLHTTP")
objXmlHttp.open "GET",asp_Url,false
objXmlHttp.send()
Dim backData
backData = objXmlHttp.responseBody
Dim objAdoStream
set objAdoStream = Server.CreateObject("ADODB.Stream")
objAdoStream.Type = 1
objAdoStream.Open()
objAdoStream.Write(backData)
objAdoStream.SaveToFile FilePath,2
objAdoStream.Close()
response.Write(FileName&"生成成功")
response.Flush()
Next
end sub
%>



[本日志由 亮亮 于 2008-12-25 09:44 PM 编辑]
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: xmlhttp 生成静态页
评论: 1 | 引用: 0 | 查看次数: -
回复回复zuike[2008-12-25 07:24 AM | del]
不错!
可是如何与数据库结合?
很多时候记录集ID并不是连续增长的。能该个例子吗?
谢谢了。
引用来自 亮亮 亮亮 于 2008-12-25 09:52 PM 回复
这个没有考虑那么多,也就说说怎么用xmlhttp怎么生成html。
这个就是和数据库结合的,比如full.asp,这个文件是通过select * from 表 where id=""来展现内容的。也就是说通过full.asp?id=''就可以浏览了。至于id不连续的问题,你可以在上面的for循环中就通过select 字段 from 表 where id="",来判断是否记录为空,为空则不运行生成html的操作
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.