怎樣開始一個ASP網站的設計

來源:互聯網
上載者:User

把這篇文章送給bluetooth;也作為給初學者的一個參考。文中談到的只是我的個人看法和做法,如有不盡之處,請指正。
在開始設計一個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
%>

這樣,當你改變資料庫名或是使用者名稱和密碼的時候,很方便的能修改過來。經過一段時間的積累,你會有許多這樣的函數或子程式,或是類,再做類似的網站的時候,只要整理出相關的放在一個檔案裡引用一下就好了。 
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.