ASP應(yīng)用之模板采用
更新時(shí)間:2007年01月03日 00:00:00 作者:
初學(xué)ASP,程序是能勉強(qiáng)寫出來了,但若每進(jìn)行一次網(wǎng)站頁面的改版,所有的源程序都將進(jìn)行一次移植手術(shù)。為此所耗費(fèi)的人力精力不計(jì)其數(shù),甚至一不小心得不償失、前功盡棄。
所以,夢想著那么大段的程序代碼變成幾個(gè)簡單的字符代替,這樣只要設(shè)計(jì)好頁面把該功能插入就OK了。其實(shí)這也簡單,只需將實(shí)現(xiàn)該功能的程序代碼做成子程序,然后主頁調(diào)用就可以了。
很多時(shí)候,在博客中國,你會(huì)選擇到很多的模板,甚至有可能自己來設(shè)計(jì);或者采用豬飛飛BLOG的各大站長都將其站點(diǎn)改得不近相同……這些,我們都?xì)w功于ASP采用模板的功能。
那下面偶就借花獻(xiàn)佛,將模板拿來分析,以饋各位朋友。
首先,模板需要在線修改,則應(yīng)采用數(shù)據(jù)庫保存模板代碼
所謂的模板,就是設(shè)計(jì)完工的標(biāo)準(zhǔn)的HTML代碼,其中需要由程序?qū)崿F(xiàn)的功能部分將采用特殊字符串代替。然,這些特殊字符串需要在顯示的時(shí)候被編譯為對(duì)應(yīng)的功能。
1,設(shè)計(jì)數(shù)據(jù)庫testmb.mdb
新建表moban:字段m_id(自動(dòng)編號(hào),主關(guān)鍵字);字段m_html(備注類型)
2,假設(shè)第一模板內(nèi)容代碼
將下列代碼拷貝到m_html字段中
注意$cntop$、$cnleft$、$cnright$,它們將要實(shí)現(xiàn)某些具體的程序功能
3,建立數(shù)據(jù)庫連接文件conn.asp
4,建立特殊字符串轉(zhuǎn)換所需要的庫文件lib.asp
該文件的主要作用是將實(shí)現(xiàn)某些功能的ASP程序做成字程序,以方便調(diào)用。
5,最后,調(diào)用數(shù)據(jù)庫中的模板代碼,將特殊字符串轉(zhuǎn)換。
該頁主要作用是將模板代碼進(jìn)行顯示,并將其中的特殊代碼轉(zhuǎn)變?yōu)橄鄬?duì)應(yīng)子程序功能。
至此,ASP的模板功能基本完成,剩下的就是:建立具備編輯模板功能的程序頁面,將庫文件改變?yōu)樽约核枰绦蚬δ堋?
所以,夢想著那么大段的程序代碼變成幾個(gè)簡單的字符代替,這樣只要設(shè)計(jì)好頁面把該功能插入就OK了。其實(shí)這也簡單,只需將實(shí)現(xiàn)該功能的程序代碼做成子程序,然后主頁調(diào)用就可以了。
很多時(shí)候,在博客中國,你會(huì)選擇到很多的模板,甚至有可能自己來設(shè)計(jì);或者采用豬飛飛BLOG的各大站長都將其站點(diǎn)改得不近相同……這些,我們都?xì)w功于ASP采用模板的功能。
那下面偶就借花獻(xiàn)佛,將模板拿來分析,以饋各位朋友。
首先,模板需要在線修改,則應(yīng)采用數(shù)據(jù)庫保存模板代碼
所謂的模板,就是設(shè)計(jì)完工的標(biāo)準(zhǔn)的HTML代碼,其中需要由程序?qū)崿F(xiàn)的功能部分將采用特殊字符串代替。然,這些特殊字符串需要在顯示的時(shí)候被編譯為對(duì)應(yīng)的功能。
1,設(shè)計(jì)數(shù)據(jù)庫testmb.mdb
新建表moban:字段m_id(自動(dòng)編號(hào),主關(guān)鍵字);字段m_html(備注類型)
2,假設(shè)第一模板內(nèi)容代碼
將下列代碼拷貝到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$,它們將要實(shí)現(xiàn)某些具體的程序功能
3,建立數(shù)據(jù)庫連接文件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,建立特殊字符串轉(zhuǎn)換所需要的庫文件lib.asp
該文件的主要作用是將實(shí)現(xiàn)某些功能的ASP程序做成字程序,以方便調(diào)用。
<% dim topcode sub cntop() topcode="現(xiàn)在時(shí)間是:" 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,最后,調(diào)用數(shù)據(jù)庫中的模板代碼,將特殊字符串轉(zhuǎn)換。
<!--#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 %> |
該頁主要作用是將模板代碼進(jìn)行顯示,并將其中的特殊代碼轉(zhuǎn)變?yōu)橄鄬?duì)應(yīng)子程序功能。
至此,ASP的模板功能基本完成,剩下的就是:建立具備編輯模板功能的程序頁面,將庫文件改變?yōu)樽约核枰绦蚬δ堋?
相關(guān)文章
隨機(jī)增加網(wǎng)站點(diǎn)擊的一個(gè)不錯(cuò)的方法
隨機(jī)增加網(wǎng)站點(diǎn)擊的一個(gè)不錯(cuò)的方法...2007-03-03九種防MDB數(shù)據(jù)庫被下載的方法小結(jié)
原來改mdb為asp就能防下載是鬼話。用Flashget試驗(yàn)下載data.asp文件,并另存為data.mdb文件,發(fā)現(xiàn)用ACCESS打開完好無損!2006-06-06利用批處理文件和 vbs 腳本實(shí)現(xiàn)網(wǎng)站視頻自動(dòng)錄制
利用批處理文件和 vbs 腳本實(shí)現(xiàn)網(wǎng)站視頻自動(dòng)錄制...2006-06-06asp實(shí)現(xiàn)防止站外提交內(nèi)容的兩個(gè)方法
asp實(shí)現(xiàn)防止站外提交內(nèi)容的兩個(gè)方法...2007-01-01用javascript編寫asp應(yīng)用--第一課--通覽
用javascript編寫asp應(yīng)用--第一課--通覽...2007-03-03