asp生成静态HTML(动态读取)

代码如下:

<!--#include file="admin_Checkuser.asp"-->
 <%
call ConnectionDatabase()
dim str,str_new
str=""
str_new=""
sqlx="select id from Fl_Products order by id desc"
set rsx=conn.execute(sqlx)
do while not rsx.eof
str=str&rsx("id")&"|"
rsx.movenext :loop
rsx.close
sqlx="select id from Fl_News order by id desc"
set rsx=conn.execute(sqlx)
do while not rsx.eof
str_new=str_new&rsx("id")&"|"
rsx.movenext :loop
rsx.close
place=InStrRev(str,"|")
str=Left(str,place-1)
place=InStrRev(str_new,"|")
str_new=Left(str_new,place-1)
 dim url,cwww,act
 act=Trim(Request.QueryString("act"))
url =Request.ServerVariables("HTTP_HOST")
cwww="http://"+url
    MakeHtm cwww&"/index.asp","../index.htm","首页写入成功!"
    MakeHtm cwww&"/about.asp","../about.htm","企业简介写入成功!"
MakeHtm cwww&"/contact.asp","../contact.htm","联系我们写入成功!"
MakeHtm cwww&"/ry.asp","../ry.htm","资质荣誉写入成功!"
MakeHtm cwww&"/liuyan.asp","../liuyan.htm","联系我们写入成功!"
MakeHtm cwww&"/pro.asp","../pro.htm","产品展示写入成功!"
MakeHtm cwww&"/news.asp","../news.htm","生成车间写入成功!"
    MakeHtm cwww&"/xinwen.asp","../xinwen.htm","新闻资讯写入成功!"
    MakeHtm cwww&"/alliance.asp","../alliance.htm","销售网络写入成功!"
'生成产品
xstr=split(str,"|")
for i=0 to ubound(xstr)
MakeHtm cwww&"/uzProduct.asp?id="&xstr(i),"../uzProduct_"&xstr(i)&".htm","产品"&xstr(i)&"写入成功!"
next
xstr=split(str_new,"|")
for i=1 to ubound(xstr)/25+1
MakeHtm cwww&"/xinwen.asp?Page="&i,"../xinwen_"&i&".htm","新闻列表"&i&"写入成功!"
next
xstr=split(str_new,"|")
for i=0 to ubound(xstr)
MakeHtm cwww&"/uzNews.asp?id="&xstr(i),"../uzNews_"&xstr(i)&".htm","新闻"&xstr(i)&"写入成功!"
next
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
 Function MakeHtm(curl,turl,mess)
 Set xml = Server.CreateObject("Microsoft.XMLHTTP")
'把下面的地址替换成你的首页的文件地址,一定要用http://开头的绝对路径,不能写相对路径
xml.Open "GET", curl, False
xml.Send
BodyText=xml.ResponseBody
BodyText=BytesToBstr(BodyText,"gb2312")
Set xml = Nothing
 '替换
 BodyText=RegReplace(BodyText,"uzProduct\.asp\?id=(\d*)", "uzProduct_$1.htm")
 BodyText=RegReplace(BodyText,"uzNews\.asp\?id=(\d*)", "uzNews_$1.htm")
 BodyText=RegReplace(BodyText,"xinwen\.asp\?Page=(\d*)", "xinwen_$1.htm")
 BodyText=replace(BodyText,"index.asp","index.htm")
 BodyText=replace(BodyText,"about.asp","about.htm")
 BodyText=replace(BodyText,"pro.asp","pro.htm")
 BodyText=replace(BodyText,"news.asp","news.htm")
 BodyText=replace(BodyText,"liuyan.asp","liuyan.htm")
 BodyText=replace(BodyText,"ry.asp","ry.htm")
 BodyText=replace(BodyText,"xinwen.asp","xinwen.htm")
 BodyText=replace(BodyText,"contact.asp","contact.htm")
Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile= fso.CreateTextFile(server.MapPath(turl), True)
MyFile.WriteLine(BodyText)
MyFile.Close
response.Write mess
response.Write "<br>"
End Function
Public Function RegReplace(sContent, sPatrn, sNewStr)
        Dim oTempReg : Set oTempReg = New RegExp
        With oTempReg
                .IgnoreCase = True
                .Global = True
                .Pattern = sPatrn
                RegReplace = .Replace(sContent, sNewStr)
        End With
        Set oTempReg = Nothing
End Function
call CloseDatabase()
  %>
  <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Untitled Document</title>
<style>
body,td{font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:10.5pt;}
</style>
</head>
<body>
</body>
</html>

来自 iisboy

(0)

相关推荐

  • Asp.net动态生成html页面的方法分享

    此功能适用于后台数据库功能不强的web站点,即大部分文本不是存放在数据库的记录中,而是放在html文件或者xml文件中,仅仅把索引放到数据库中,如文章标题.类别.查询关键字等.这样适合于后台没有诸如MS Sql Server这样的数据库支持的Web站点.  适用于新闻发布系统,比如sina.163等都是采用动态生成html页面的.     适用于需动态定制页面的程序.比如论坛.聊天室等.可以加载定制好的html页面,来加强美观.     思路     1. 利用如Dw-Mx这样的工具生成html

  • asp.net动态加载自定义控件的方法

    本文实例讲述了asp.net动态加载自定义控件的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: //usercontrol.IndexOper为自定义控件 usercontrol.IndexOper uc=(usercontrol.IndexOper)Page.LoadControl("自定义控件路径"); uc.ID = "uc";  //定义唯一标示 //OperContent为PlaceHolder控件 OperContent.Contr

  • asp.net后台如何动态添加JS文件和css文件的引用

    首先添加命名空间 using System.Web.UI.HtmlControls; 代码动态添加css文件的引用 HtmlGenericControl myCss = new HtmlGenericControl(); myCss .TagName = "link"; myCss .Attributes.Add("type", "text/css"); myCss .Attributes.Add("rel", "s

  • 一个ASP创建动态对象的工厂类(类似PHP的stdClass)

    最近整理ASP/VBScript代码,发现过去的一个ASP实现的MVC框架,可惜是个半成品,效率也成问题,不过发现里面有些我写的代码,感觉还稍稍可以拿出来见人,于是今天作此文以记之. 说是ASP,其实和VBScript也脱不了干系,VBScript语言传承于Visual Basic,VB的语法灵活度已经不尽如人意了,VBS作为其子集可想而知.神马反射.自省等先进的技术,微软在.NET中才引入.作为被抛弃的技术,也不奢望微软能够提供支持,于是顽固守旧的程序员只有绞尽脑汁的去模仿实现一些类似的功能.

  • asp.net通过动态加载不同CSS实现多界面

    方法一: 复制代码 代码如下: <%@page language="C#"%> <%@import namespace="System.Data"%> <script language="c#" runat="server"> public void page_load(Object obj,EventArgs e) {   //创建服务器端控件.   //指定的标记"LINK&q

  • asp.net为网页动态添加关键词的方法

    本文实例讲述了asp.net为网页动态添加关键词的方法.分享给大家供大家参考.具体如下: 这段代码可以修改网页的keyword meta HtmlMeta keywords = new HtmlMeta(); keywords.Name = "keywords"; keywords.Content = "关键词"; Page.Header.Controls.Add(keywords); 希望本文所述对大家的asp.net程序设计有所帮助.

  • asp.net在后端动态添加样式表调用的方法

    本文实例讲述了asp.net在后端动态添加样式表调用的方法.分享给大家供大家参考.具体实现方法如下: HtmlLink CssControl = new HtmlLink(); CssControl.Href = url; CssControl.Attributes.Add("rel", "stylesheet"); CssControl.Attributes.Add("type", "text/css"); page.Hea

  • ASP.NET创建动态缩略图的方法

    本文实例讲述了ASP.NET创建动态缩略图的方法.分享给大家供大家参考.具体分析如下: 提示: 1. 导入 System.IO 2. 创建 类C lass "CreateThumbnails" or any class and place following function inside that class You need one function to response call back to main function Function ImageAbortDummyCal

  • asp+jsp+JavaScript动态实现添加数据行

    在应用程序的开发中,有些输入信息是动态的,比如我们要注册一个员工的工作经历,比如下图 如果做成死的,只能填写三个,如果是四个呢?或者更多呢,那不是添加不上去了吗,所以这样固然不好,我们可以用动态添加表格行实现,如下图,添加一行,输入一行信息,这样比较灵活 下面我们就来看看如何在asp和asp.net中结合javascript来实现这种效果: 首先,动态添加表格是要在前台实现的,当然后台也可以,不过可能要用到ajax,很麻烦,所以最好采用javascript来实现,下面来介绍动态添加表格行的两种方

  • asp.net后台动态添加JS文件和css文件的引用实现方法

    本文实例讲述了asp.net后台动态添加JS文件和css文件的引用实现方法.分享给大家供大家参考之用.具体方法如下: 首先添加命名空间 using System.Web.UI.HtmlControls; 代码动态添加css文件的引用: HtmlGenericControl myCss = new HtmlGenericControl(); myCss .TagName = "link"; myCss .Attributes.Add("type", "tex

  • asp添加数据实现代码

    举例: 如:在字段名处输入:username,password,email,telphone 注意:不同的字段名用英文逗号隔开,且不支持星号 表名处输入要查询的表名:如:table1 前台表单页面: 主要是注意input字段的name属性. asp下常用的添加数据代码是: 通过adodb.recordset 优点是:数据库入库比较简单,不用考虑单引号问题.不容易出现错误. 复制代码 代码如下: username = request("username") password = requ

  • asp.net动态添加js文件调用到网页的方法

    本文实例讲述了asp.net动态添加js文件调用到网页的方法.分享给大家供大家参考.具体实现方法如下: HtmlGenericControl JsControl = new HtmlGenericControl("script"); JsControl.Attributes.Add("type", "text/javascript"); JsControl.Attributes.Add("src", url); page.He

  • ASP.NET动态生成静态页面的实例代码

    最近突然想把项目中新闻管理模块做成静态页,在网上找到很多很好的文章,在这里记录一下,现在只是实现静态页面的生成并没有实现分页功能.其主要原理就是读取数据库的数据然后替换掉静态模板页的内容.首先制作一个模板页,暂时命名为template.htm,示例代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-trans

随机推荐