ASP应用之模板采用_ASP基础

初学ASP,程序是能勉强写出来了,但若每进行一次网站页面的改版,所有的源程序都将进行一次移植手术。为此所耗费的人力精力不计其数,甚至一不小心得不偿失、前功尽弃。

所以,梦想着那么大段的程序代码变成几个简单的字符代替,这样只要设计好页面把该功能插入就OK了。其实这也简单,只需将实现该功能的程序代码做成子程序,然后主页调用就可以了。

很多时候,在博客中国,你会选择到很多的模板,甚至有可能自己来设计;或者采用猪飞飞BLOG的各大站长都将其站点改得不近相同……这些,我们都归功于ASP采用模板的功能。

那下面偶就借花献佛,将模板拿来分析,以馈各位朋友。

首先,模板需要在线修改,则应采用数据库保存模板代码

所谓的模板,就是设计完工的标准的HTML代码,其中需要由程序实现的功能部分将采用特殊字符串代替。然,这些特殊字符串需要在显示的时候被编译为对应的功能。

1,设计数据库testmb.mdb
新建表moban:字段m_id(自动编号,主关键字);字段m_html(备注类型)

2,假设第一模板内容代码

将下列代码拷贝到m_html字段中


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>testmb</title>
</head>
<body leftmargin="0" topmargin="0">
<table width="100%" height="100%" border="0" cellpadding="5" cellspacing="2">
<tr align="right" bgcolor="#CCCCCC">
<td height="20" colspan="2">$cntop$</td>
</tr>
<tr valign="top">
<td width="25%" bgcolor="#e5e5e5">$cnleft$</td>
<td width="74%" bgcolor="#f3f3f3">$cnright$</td>
</tr>
</table>
</body>
</html>

注意$cntop$、$cnleft$、$cnright$,它们将要实现某些具体的程序功能

3,建立数据库连接文件conn.asp


<%
set conn= Server.CreateObject("ADODB.Connection")
connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("testmb.mdb")
conn.Open connstr
%>

4,建立特殊字符串转换所需要的库文件lib.asp

该文件的主要作用是将实现某些功能的ASP程序做成字程序,以方便调用。


<%
dim topcode
sub cntop()
topcode="现在时间是:"
topcode=topcode&now()
end sub

dim leftcode,i
sub cnleft()
for i = 1 to 5
leftcode=leftcode&"<p>cnbruce.com"
next
end sub

dim rightcode
sub cnright()
for i = 1 to 9
rightcode=rightcode&"<hr color="&i&i&i&i&i&i&">"
next
end sub
%>

5,最后,调用数据库中的模板代码,将特殊字符串转换。


<!--#include file="conn.asp" -->
<!--#include file="lib.asp" -->
<%
sql="select * from moban where m_id=1"
set rs=Server.CreateObject("adodb.recordset")
rs.open sql,conn,1,1
mb_code=rs("m_html")
rs.close
set rs=nothing

cntop()
mb_code=replace(mb_code,"$cntop$",topcode)
cnleft()
mb_code=replace(mb_code,"$cnleft$",leftcode)
cnright()
mb_code=replace(mb_code,"$cnright$",rightcode)

response.write mb_code
%>

该页主要作用是将模板代码进行显示,并将其中的特殊代码转变为相对应子程序功能。

至此,ASP的模板功能基本完成,剩下的就是:建立具备编辑模板功能的程序页面,将库文件改变为自己所需要程序功能……

时间: 2024-10-11 17:09:18

ASP应用之模板采用_ASP基础的相关文章

使用模板实现ASP代码与页面分离_ASP基础

每个进行过较大型的ASP-Web应用程序设计的开发人员大概都有如下的经历:ASP代码与页面HTML混淆难分,业务逻辑与显示方式绞合,使得代码难以理解.难以修改:程序编写必须在美工之后,成为项目瓶颈:整合的程序代码和HTML静态页面时,花费大量的时间才能得到理想的效果,兼作了美工.的确,用脚本语言开发Web应用不容易将数据的处理和数据的显示分开,但在多人合作的情况下,如果无法将数据和显示分开,将大大影响开发的效率,专业分工的发挥. 其它的脚本语言,如JSP.PHP都有自己的解决方案,ASP的后一代

ASP应用之模板采用

模板|模板 初学ASP,程序是能勉强写出来了,但若每进行一次网站页面的改版,所有的源程序都将进行一次移植手术.为此所耗费的人力精力不计其数,甚至一不小心得不偿失.前功尽弃. 所以,梦想着那么大段的程序代码变成几个简单的字符代替,这样只要设计好页面把该功能插入就OK了.其实这也简单,只需将实现该功能的程序代码做成子程序,然后主页调用就可以了. 很多时候,在博客中国,你会选择到很多的模板,甚至有可能自己来设计:或者采用猪飞飞BLOG的各大站长都将其站点改得不近相同--这些,我们都归功于ASP采用模板

asp是什么格式 asp文件用什么打开_ASP基础

什么是ASP,它能干什么? 一.什么是ASP? 从字面上说,ASP包含三方面含义: 1.Active:ASP使用了Microsoft的ActiveX技术.ActiveX(COM)技术是现在Microsoft软件的重要基础.它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作.ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件.只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速.简易地建立自己的WEB应用. 2.Server:ASP运行在服务器端.这样就不必担

asp数个使用技巧_ASP基础

●布尔型数据还可以这样转化: share=true sharex=not(sharex) response.write sharex 得到结果是false 少了很多if判断  15:49 2006-3-29 ●插入含'(单引号)数据: title=replace(title,"'","''") Set update=conn.Execute("insert into netcang(title) Values('"&title&&

站长感慨asp编程究竟何去何从[原创]_ASP基础

令人抱憾的一个现象,今天一个同事说我的网络编程栏目下的asp编程,竟然没有带来任何ip,我的站的好多asp编程资料都是手工从各大比较好的asp编写的系统中提取出来的asp的精华代码,网上转载了我的全站信息的网站有很多,我的站的asp编程,asp下fso操作,asp小偷与采集,asp class类的都是精品文章,其中asp基础更是包括了6大对象等基础学习资料,希望能给学习asp编程类的朋友带来一定的便利,而且我要说的是,大家如果来学asp的基础编程,那么我可以负责任的告诉大家,大家如果还在到底学a

ASP操作Excel技术总结_ASP基础

目录  一. 环境配置  二. ASP对Excel的基本操作  三. ASP操作Excel生成数据表  四. ASP操作Excel生成Chart图  五. 服务器端Excel文件浏览.下载.删除方案  六. 附录  正文  一. 环境配置  服务器端的环境配置从参考资料上看,微软系列的配置应该都行,即:  1.Win9x+PWS+Office  2.Win2000 Professional+PWS+Office  3.Win2000 Server+IIS+Office  目前笔者测试成功的环境是

javascript asp教程添加和修改_ASP基础

The Connection Execute(): If you want to retrieve data from a database then you have no choice but to use a Recordset. However, for the purposes of adding, updating, and deleting data you don't necessarily have to have a Recordset. It's up to you. Fo

用ASP开&amp;quot;多线程&amp;quot;_ASP基础

在网上找到一个用ASP开的假线程,发现和我以前做的一个程序不谋而合,只不过以前用的是VB,摘下来,储备. 1.原理实验 原理当然都一样,利用web服务器支持多线程,在同一页面里向服务器发多个http请求来完成我们的工作.还是先实验一下,在一个页面里同时写2个txt文件,比较写入时间的差异.代码如下: <% startime=timer()''----------asp实现多线程----------''function runThread()dim Httpset Http=Server.crea

HTML标签及ASP函数速查表_ASP基础

HTML文件标记  <html>  <head>  <!-->  <title>  <body>  文字排版标记  <br/>  <nobr>  <p>  <pre>            原始文字样式  <center>  <blockquote>     向内缩排  <h>              标题  <strong>,<b>