当前位置: 首页 > 图文教程 > 网络编程 > ASP > 通过XMLHTTP实现模板式静态页生成

ASP
ASP动态生成的javascript表单验证代码
将身份证从15位升级为18位的函数
ASP自定义函数,仿VBA中域函数DLookup
6行代码实现无组件上传
用VS2003调试ASP的方法和体会
ASP中存储过程调用的两种方式及比较
升级到2003后访问数据库发生8007007f错误的解决
ACCESS转化成SQL2000需要注意的几个问题
让ASP程序运行于非Windows平台
一些不长见的ASP调用存储过程的技巧
网站图片扫描类
一条sql 语句搞定数据库分页
在ASP中取得服务器网卡的MAC地址、DNS地址等网络信息
ASP中轻松实现变量名-值变换
用Xml2OleDb将XML文件插入到数据库
购物车中数据的存放方式
ASP数据库编程SQL常用技巧
在ASP中利用ADO显示Excel文件内容的函数
ASP+SQL Server之图象数据处理
在 Access 中使用“存储过程”

ASP 中的 通过XMLHTTP实现模板式静态页生成


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 166 ::
收藏到网摘: n/a

前两天在给自己的一个网站(www.cfsoft.com.cn)做一个文章发布程序,为了使网站更容易被搜索网站收录所以将内容都生成为静态页

一、xxfb表结构如下

type   类型,在我的网站中用来区分几个栏目,我那里有一个技术,一个新闻

pagetitle页面标题

keywords页面关键字

description页面mata里的描述

doctitle 文章标题

doctext文章内容

thedate发布时间

orderid排序代号

commend标注是否为推荐文章

二、每一个类型定义一个list_加类型名的目录模板页面,一个temp_加类型名的文章模板页面

三、以下为静态页生成主体程序

以下为引用的内容:
If Trim(request("flag"))="BUILD" Then
'---生成目录------
sql="select distinct type from xxfb"
Set objrs=conn.execute(sql)
While Not objrs.eof
url = siteurl&"/admin/list_"&Trim(objrs("type"))&".asp"
set http=Server.createobject("Msxml2.XMLHTTP")
Http.open "GET",url,false
Http.send()
set objStream = Server.CreateObject("ADODB.Stream")
objStream.type = 1
objStream.open
objstream.write http.responseBody
objstream.saveToFile server.mappath("/"&Trim(objrs("type"))&"/"&Trim(objrs("type"))&".htm"),2
objstream.close
Set objstream=Nothing
   objrs.movenext
Wend
Set objrs=Nothing

sql="select * from xxfb order by thedate desc"
Set objrs=conn.execute(sql)
While Not objrs.eof
   url = siteurl&"/admin/temp_"&Trim(objrs("type"))&".asp?id="&Trim(objrs("id"))
   set http=Server.createobject("Msxml2.XMLHTTP")
   Http.open "GET",url,false
   Http.send()
   set objStream = Server.CreateObject("ADODB.Stream")
   objStream.type = 1
   objStream.open
   objstream.write http.responseBody
   objstream.saveToFile server.mappath("/"&Trim(objrs("type"))&"/"&Trim(objrs("id"))&".htm"),2
   objstream.close
   Set objstream=Nothing
   objrs.movenext
wend
Response.Write "生成静态网页成功!"
End if