如何開始一個ASP網站的設計
作者:Eve Cole
更新時間:2009-06-25 17:36:26
在開始設計一個ASP網站的時候,面對著一大堆的問題,到底要怎麼樣入手,才能讓網站設計做到快,好,而且調試、更改,移植起來又方便呢?以下以留言本的設計為例子,談談站點的設計。
(一)站點的功能
“磨刀不誤砍柴工”,先寫出站點的功能,對以後的工作有很大的幫助。現在來設計一個留言本,功能如下:
1、單用戶版。只有一個管理員,所有人都可以留言,可以搜尋留言
2、記錄下每位留言者的IP,QQ,頭像,姓名,首頁,電子郵件,留言時間,留言內容;
3、有管理員回覆功能。如果已經回复,也可以更改回复的內容。記錄回覆的時間;
4、記錄主頁的位置,以便快速回到主頁。
5、自訂的頁頭和頁尾。顯示特定的資訊。
6.將資料存到ACCESS資料庫
7.管理功能:管理員登入/回覆/刪除/更改管理員密碼/更改顯示的留言數/更改主頁
(二)站點資料庫
一般ASP站點都要用到資料庫,先設計好資料庫,使用時才不會為了一個欄位而去查詢或更改資料庫的設計。特別是對大型的網站,好的資料庫設計可以影響整個網站的運作。現在我們來設計留言本的資料庫:
1、資料庫名稱:lyb.mdb
2、表:共有二個表
表一: admin
欄位名稱 | 類型 | 長度 | 其它 | 說明 |
admin_user | 文字 | 15 | 不允許空值/主鍵 | 管理員使用者名稱 |
admin_pass | 文字 | 15 | 不允許空值 | 管理員密碼 |
admin_http | 文字 | 50 | 可為空值 | 主頁位址 |
admin_perpage | 數字/整數 | | 小數為0 | |
表二: main
欄位名稱 | 類型 | 長度 | 其它 | 說明 |
user_id | 自動編號 | | | |
user_name | 文字 | 15 | 不為空白 | 名稱 |
user_image | 文字 | 30 | 不為空 | 頭像檔名 |
user_ip | 文字 | 15 | 不為空 | IP位址 |
user_oicq | 文字 | 10 | 可為空 | QQ號 |
user_http | 文字 | 50 | 可為空 | 主頁 |
user_email | 文字 | 50 | 可為空 | 電子郵件 |
user_time | 日期 | 長日期 | | 留言時間 |
user_ly | 文字 | 255 | 不為空 | 留言內容 |
user_replay | 是/否 | | | 是否回覆 |
user_rply | 文字 | 255 | 可為空 | 回覆內容 |
user_rptime | 日期 | | 長日期 | 回覆時間 |
留言本的資料庫比較簡單,如果是大型網站,在資料庫設計好後要重複檢查。所有的字段名最好用命名標準,在資料庫設計完成後,最好能列印出一份像上面的列表來,以方便使用。
(三)站點的文件設計
文件的設計主要是設計有多少文件,每個文件分別包含哪些內容,以及之間的關係。以留言本為例,文件設計如下:
1、 inc.asp 有關函數和常數,包括開啟資料庫函數,開啟表格函數,文字處理函數
2、top.htm 頁頭信息
3、bottom.htm 頁尾訊息
4、index.asp 留言本主頁。包括顯示留言,管理員登錄,修改參數,回覆留言。引用inc.asp;
5、main.css css檔;
6、tou.htm 頭像清單檔案;
7、image 資料夾,存頭像及其它圖片;
(四)站點的頁面設計
頁面設計主要是設計頁面的風格和佈局。這部分內容比較多,通常是先定位整個頁面的風格,然後設計所有的插圖和Flash,再設計CSS,最後設計每個頁面。對於頁面有重複的內容,先設計單一的內容。這裡僅列出index.asp的大致設計,如下:
'引用inc.asp <% '處理參數 '留言子程式 '登入子程式 '回復子程式 '刪除子程式 '修改參數子程序 '登出登入子程序 %> <html> <head> <!-引用CSS-!> <title>留言本</title> <body> '引用top.htm '顯示留言表單 '顯示搜尋表單 '顯示留言記錄 '引用bottom.htm </body> </html> |
當然,在頁面設計階段,並不要寫出子程序,只要把顯示的各部份做好就行了
(五)站頁的程式碼設計
主要就是完成ASP程式碼的設計。在這裡只談談如何讓網站的可修改性和可移植性加強。只有一點:多用元件或是函數,當然如果寫成類別就更好了。對於小站點,也不希望到每個頁面的某個子程序再去用set conn=server.createobject("adodb.connection"),而是把它寫成一個函數或子程序,放在頁面裡,例如:
<% databasename="lyb.mdb" uid="" pid="" sub opendb(connect) set connect=server.CreateObject("ADODB.connection") connect.ConnectionString="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &_ server.MapPath(databasename) &";uid="&uid&";pid="&pid connect.Open strconn end sub %> |
這樣,當你改變資料庫名稱或是使用者名稱和密碼的時候,很方便的能修改過來。經過一段時間的積累,你會有許多這樣的函數或子程序,或者是類,再做類似的站點的時候,只要整理出相關的放在一個文件裡引用一下就好了。