用模板建立動態ASP頁
來源:互聯網
上載者:User
對於模板,我想大家可能都有一些概念,在word中很多模板,設計好了大概的版面,你只要用你自己的話填充那些佔位字元就好了。這兒的模板大概也就是這個意思,頁面中相對穩定的部分固定下來,其他的部分根不同的情況在輸入不同的內容。其實在DreamWeaver中也有模板的功能,不過那個靜態,只能手動填充內容,而這兒講的是動態自動的內容填充。
首先,我先來解釋一下為什麼要用到模板檔案。有時候,模板能夠帶給你對網頁功能和布局更為完整的概念。當你看到Word的模板格式之後,就知道最後版面是個什麼樣子的了,在這兒也是如此。例如,你可以保留ASP語句,而使用不同的模板來建立不同的頁面風格。這樣,你就不用為每種不同風格的網頁分別來寫不同的ASP頁面了,這顯然可以為我們節省很多時間和精力。
而且,模板檔案能夠讓你更容易的瀏覽頁面代碼,不用擔心ASP和HTML的混雜搞的你頭昏腦脹。你可以只用把注意力集中在HTML上,而完全不用去管ASP了。 再有就是,摸板很簡單,你絕對很快就能搞懂搞定。在這篇文章中,將會用到一個資料庫——一個用的很廣泛的僱員表。包括僱員ID,姓名,照片,以及工作摘要和照片的註腳。下面是這個Access資料庫的結構:
檔案名稱 - myDatabase.mdb
表名 - Employees
ID
自動計數(Autonumber)
FullName
文本 - 最多100個字元
PicURL
文本 - 最多255個字元
Duties
注釋類型
PicCaption
文本 - 最多50個字元
一個很簡單的資料庫,是吧。當然你可以按要求來擴充它,那就是你自己的事了。我假設你已瞭解資料庫的基本操作,這樣我不用在這上面花太多的筆墨,其實這兒的代碼都是很簡單的,只要你知道一些基本的東西,就能把它看懂。建立了資料庫之後,我們可以開始建立模板檔案了。這個檔案是每個頁面的骨架。我沒有用到表格,那樣有些麻煩,而我很懶:-)而且,也不用加入,標籤,因為那是要加在ASP頁面中的。所以到最後,它的樣子就是這樣了:
< img src="%img%" align="left">< p>Full Name: < b> %name% < /b>
< br>Description of duties: < br>%duties%
< br>This picture was taken: %date%
< br>< br>
Employee ID: %empID%
就是這樣了!這就是一個簡單的模板。把它存為template.tmp,在後面的ASP頁面中將要引用到它。要注意的是:我們可以在模板中加入各種HTML標籤,你完全可以在摸版中定義好網頁的結構和樣式,就像實際寫一個網頁一樣,只是要把關鍵的地方標出來——注意到了那些%圍著的東西了嗎?那就是模板的精髓了。或許你已經注意到,那些%圍著的是和資料庫中的欄位意義對應的。看看下面的ASP代碼,是如何讀入模板和資料庫檔案,把他們揉和在一起,然後輸出我們想要的HTML頁面。
< html>
< head>
< title>< %=rsTemp("FullName")%>< /title>
< /head>
< body>
< /body>
< /html>
這就是所有的代碼了,很簡單,不是嗎?它所作的只是開啟模板檔案,按順序讀入每一行,然後用沖資料庫中讀入的實際的欄位值來代替模版中那些%img%,%name%標記。而且,它還把在“Duties”欄位內大段文本中的斷行符號解釋成HTML的斷行符號< BR>,這樣就不至於打亂整個的排版格式了。怎麼樣?輕鬆搞定吧。模板在某些應用上真的是可以發揮奇效,省時省力。理論上,你還可以修改這段代碼,用FileSystemObject來讀寫文本,這樣資料就不一定要儲存在資料庫中了。在一些應用中,比如即時的新聞發布,這樣也許更為方便一些。