版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目錄</b></p><p> 一、在 線 花 店2</p><p> 二、特 色 突 破3</p><p> 三、 系 統(tǒng) 概 述3</p><p><b> 3.1系統(tǒng)設(shè)計3</b></p><p> 3.1.1 系統(tǒng)功能與
2、應(yīng)用背景3</p><p> 3.1.2 系統(tǒng)瀏覽4</p><p> 3.1.3 系統(tǒng)特點(diǎn)4</p><p> 3.2 系統(tǒng)設(shè)計和架構(gòu)5</p><p> 3.2.1 系統(tǒng)設(shè)計思想5</p><p> 3.2.2 系統(tǒng)結(jié)構(gòu)設(shè)計5</p><p> 系統(tǒng)功能模塊細(xì)分6&
3、lt;/p><p> 3.2.3服務(wù)器和ASP運(yùn)作環(huán)境配置6</p><p> 3.3數(shù)據(jù)庫的設(shè)計、生成與配置8</p><p> 3.3.1 數(shù)據(jù)庫需求分析9</p><p> 3.3.2數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計9</p><p> 3.3.3數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計12</p><p>
4、 3.4公用模塊的編寫16</p><p> 3.4.1數(shù)據(jù)庫連接文件16</p><p> 3.4.2頁面頭文件22</p><p> 3.4.3頁面尾文件23</p><p> 3.5前臺界面設(shè)計與實(shí)現(xiàn)27</p><p> 3.5.1首頁設(shè)計27</p><p>
5、 3.5.2產(chǎn)品詳細(xì)信息32</p><p> 3.5.3我的購物車頁面設(shè)計36</p><p> 3.5.4結(jié)帳處理40</p><p> 3.5.5用戶注冊的設(shè)計與實(shí)現(xiàn)47</p><p> 3.5.6訂單查詢49</p><p> 四、 結(jié) 論50</p><p&g
6、t; 五、致 謝51</p><p><b> 六、參考文獻(xiàn)52</b></p><p><b> 摘要</b></p><p> 本系統(tǒng)是一個相對簡單的基本應(yīng)用系統(tǒng),主要滿足傳統(tǒng)的花店運(yùn)營需要,將自己的銷售渠道擴(kuò)展到網(wǎng)上,通過簡單的管理,提供給最終消費(fèi)者產(chǎn)品的展現(xiàn)、購物、訂單處理等一實(shí)現(xiàn)鮮花在線銷售。&
7、lt;/p><p> 通過本系統(tǒng)可以管理簡單的在線銷售模式、滿足用戶隨時查詢產(chǎn)品信息,隨時下單購物的應(yīng)用需求。由于本系統(tǒng)考慮到產(chǎn)品的適應(yīng)性、安全性和訪問效率,所以,在系統(tǒng)平臺多樣性、技術(shù)先進(jìn)性、功能適應(yīng)性和靈活性等方面都有考慮,使系統(tǒng)相對完善,具有更好的學(xué)習(xí)價值。</p><p> 關(guān)鍵詞:花店,在線,網(wǎng)店</p><p><b> Abstract &
8、lt;/b></p><p> The present system is a relatively simple and basic applications, mainly to meet the needs of the traditional flower shop operator, will expand its sales channels to the Internet through s
9、imple management, to the final consumer products show, shopping, order processing and so on to achieve a Online sales of flowers. The system can be managed through a simple on-line sales mode, the user at any time to me
10、et the product information, shopping at any time under a single application requirements. As</p><p><b> 一、在 線 花 店</b></p><p> 再線花店系統(tǒng)將傳統(tǒng)的花店經(jīng)營管理模式與計算機(jī)網(wǎng)絡(luò)的綜合經(jīng)營管理模式結(jié)合在一</p><p
11、> 起。將人、機(jī)、物的需求、活動和運(yùn)作進(jìn)行系統(tǒng)分析、設(shè)計并管理,一實(shí)現(xiàn)現(xiàn)代高效、科學(xué)且安全的電子商務(wù)。</p><p> 本例通過一個在線花店的實(shí)例來介紹ASP與Access數(shù)據(jù)庫結(jié)合開發(fā)的小型電子商務(wù)系統(tǒng)的過程。在系統(tǒng)設(shè)計時。從傳統(tǒng)花店的經(jīng)營模式,網(wǎng)上用戶需求與業(yè)務(wù)經(jīng)營模式,計算機(jī)網(wǎng)絡(luò)管理、系統(tǒng)設(shè)計等幾方面綜合分析,定義系統(tǒng)的輸入、輸出、實(shí)現(xiàn)功能、系統(tǒng)運(yùn)作能力、系統(tǒng)安全性、系統(tǒng)可維護(hù)性等各項(xiàng)需求。其中
12、數(shù)據(jù)庫采用Access,動態(tài)網(wǎng)頁開發(fā)采用ASP,綜合應(yīng)用了ADO、數(shù)據(jù)庫設(shè)計、密碼、身份驗(yàn)證和緩存等技術(shù)。</p><p><b> 二、特 色 突 破</b></p><p> 網(wǎng)上花店系統(tǒng)適合在線銷售鮮花、禮品等,具有商品多屬性檢索(支持多重屬性分類)、</p><p> 購物車、訂單提交和查詢等網(wǎng)上花店所需的基本功能。</p&
13、gt;<p> 本系統(tǒng)采用ASP編寫,在Windows的IIS的支持下運(yùn)行。為了提高系統(tǒng)的效率,使用戶瀏覽時候響應(yīng)速度更快,本實(shí)例后臺采用了緩存技術(shù)。</p><p> 三、 系 統(tǒng) 概 述</p><p><b> 3.1系統(tǒng)設(shè)計</b></p><p> 3.1.1 系統(tǒng)功能與應(yīng)用背景</p><p
14、> 互聯(lián)網(wǎng)以前所未有的速度發(fā)展,成為與報紙、廣播、電視相比肩的第四媒體,同時正以其更捷的信息傳輸形式改變這人們的消費(fèi)模式,利用簡單、快界、低成本的電子通信方式,買賣雙方不謀面就可以進(jìn)行各種商貿(mào)活動,走向商業(yè)的互聯(lián)網(wǎng)已經(jīng)成為網(wǎng)絡(luò)經(jīng)濟(jì)的大勢所趨。</p><p> 眼下電子商務(wù)網(wǎng)站正如雨后春筍般大量涌現(xiàn),企業(yè)網(wǎng)絡(luò)化已經(jīng)一種時尚。電子商務(wù)的發(fā)展可能大家都已經(jīng)耳濡目染,上網(wǎng)的朋友對這已經(jīng)不再陌生,電子商務(wù)確確實(shí)
15、實(shí)出現(xiàn)在我們周圍。本系統(tǒng)是一個在線花店系統(tǒng),具有在線先手鮮花的基本功能。同過配置,可以作為一個實(shí)際應(yīng)用的鮮花銷售網(wǎng)站。本系統(tǒng)是為傳統(tǒng)經(jīng)營的花店構(gòu)建網(wǎng)上銷售渠道而開發(fā)的。</p><p> 本例中的在線花店重要完成的功能如下。</p><p> 鮮花產(chǎn)品選購(可按分類方式查找鮮花種類或通過關(guān)鍵字進(jìn)行查詢)</p><p><b> 購物車功能</
16、b></p><p><b> 查看鮮花詳細(xì)情況</b></p><p><b> 用戶注冊</b></p><p><b> 用戶登陸</b></p><p><b> 查看用戶的訂單信息</b></p><p>&
17、lt;b> 用戶評論</b></p><p> 3.1.2 系統(tǒng)瀏覽</p><p> 圖 3-1 是用戶訪問網(wǎng)站的第一個界面,也是本系統(tǒng)的主界面。用戶通過這個主界面可以瀏覽網(wǎng)站各個分類頁面,瀏覽推薦商品和查看分類屬性頁等。</p><p> 圖 3-1 網(wǎng)站的首頁</p><p> 3.1.3 系統(tǒng)特點(diǎn)</
18、p><p> 本章所介紹的實(shí)例具有以下特點(diǎn)。</p><p><b> (1)頁面模塊化</b></p><p> 本系統(tǒng)在界面設(shè)計上都采用了模塊化處理思想,把很多頁面功用部分集成一個模塊,例如頁面的頭、尾和導(dǎo)航條,這樣在開發(fā)是遇到這些相似的頁面部分,就不需要重新編寫,只要重用這部分即可,大大提高了開發(fā)效率。</p><p
19、><b> ?。?)緩存技術(shù)</b></p><p> 把產(chǎn)品導(dǎo)航信息放到內(nèi)存中緩存起來,大大提高了網(wǎng)站效率和響應(yīng)速度。</p><p> 3.2 系統(tǒng)設(shè)計和架構(gòu)</p><p> 3.2.1 系統(tǒng)設(shè)計思想</p><p> 電子上午發(fā)展已經(jīng)有10多年的歷史了,在中國很多人對電子商務(wù)也逐漸接受和認(rèn)可。網(wǎng)上購
20、物作為依仗時尚很多人去體會,更有部分人把購物同逛商場等顯示社會服務(wù)一樣作為生活的一部分。鮮花作為生活的點(diǎn)綴,也越來越為生活所需要。這種網(wǎng)上買賣鮮花的交易越來越多,也逐漸被廣大消費(fèi)者所接受。</p><p> 本系統(tǒng)是一個相對簡單的基本應(yīng)用系統(tǒng),主要滿足傳統(tǒng)的花店運(yùn)營需要,將自己的銷售渠道擴(kuò)展到網(wǎng)上,通過簡單的管理,提供給最終消費(fèi)者產(chǎn)品的展現(xiàn)、購物、訂單處理等一實(shí)現(xiàn)鮮花在線銷售。</p><p
21、> 通過本系統(tǒng)可以管理簡單的在線銷售模式、滿足用戶隨時查詢產(chǎn)品信息,隨時下單購物的應(yīng)用需求。由于本系統(tǒng)考慮到產(chǎn)品的適應(yīng)性、安全性和訪問效率,所以,在系統(tǒng)平臺多樣性、技術(shù)先進(jìn)性、功能適應(yīng)性和靈活性等方面都有考慮,使系統(tǒng)相對完善,具有更好的學(xué)習(xí)價值。</p><p> 本實(shí)例把頁面中一些常用的部分集成為模塊,例如頁面的頭和尾部,這樣設(shè)計新的頁面如果有重復(fù)出現(xiàn)的部分,只需要那現(xiàn)成的模塊來組裝就可以了。<
22、/p><p> 3.2.2 系統(tǒng)結(jié)構(gòu)設(shè)計</p><p> 本實(shí)例由Web服務(wù)器為最終用戶提供展現(xiàn)服務(wù)和為管理員提供管理服務(wù);用數(shù)據(jù)庫保存產(chǎn)品、用戶和訂單等信息。系統(tǒng)結(jié)構(gòu)如圖3-2所示</p><p> 圖 3-2 系統(tǒng)結(jié)構(gòu)圖</p><p><b> 系統(tǒng)功能模塊細(xì)分</b></p><p>
23、;<b> ?。?)用戶管理模塊</b></p><p> 管理用戶登錄、用戶注冊和用戶修改等用戶信息的基本功能,與一般電子商務(wù)的用戶管理系統(tǒng)基本相同。</p><p><b> ?。?)產(chǎn)品信息模塊</b></p><p><b> 陳列產(chǎn)品的詳細(xì)信息</b></p><p&
24、gt; ?。?)導(dǎo)航分類檢索模塊</p><p> 按不同分類和不同應(yīng)用導(dǎo)航產(chǎn)品,把相關(guān)產(chǎn)品列出。</p><p> (4)購物車處理模塊</p><p> 通過cookie技術(shù)實(shí)現(xiàn)購物車。用戶選者產(chǎn)品后,點(diǎn)擊“購買”進(jìn)入購物頁面,陳列要購買的產(chǎn)品明細(xì)項(xiàng)。</p><p> ?。?)用戶選擇產(chǎn)品完畢,通過購物頁面到訂單結(jié)帳頁面,填寫必要
25、的信息,產(chǎn)生最終訂單;還提供訂單查詢功能。</p><p> 3.2.3服務(wù)器和ASP運(yùn)作環(huán)境配置</p><p><b> 1.軟件準(zhǔn)備</b></p><p> 本章實(shí)例的數(shù)據(jù)庫管理軟件采用Access,安裝Office的時候便會附帶安裝Access如果讀者機(jī)器上沒有安裝Access,請準(zhǔn)備Office軟件;Web服務(wù)采用IIS,II
26、S的安裝請參考1.3.4節(jié)。</p><p><b> 2.IIS的配置</b></p><p> IIS默認(rèn)的Web(主頁)文件存放于系統(tǒng)根區(qū)的“%system%inetpu/wwwroot”中。</p><p> 這里簡單介紹IIS配置虛擬目錄的過程。在“控制面板”,雙擊“管理工具”,在“管人站點(diǎn)”,然后用鼠標(biāo)右鍵單擊“默認(rèn)網(wǎng)站”。從
27、彈出的快捷菜單中選擇【新建】→【虛擬目錄】,如圖3-3所示</p><p> 彈出如圖3-4所示的“虛擬目錄別名”對話框。</p><p> 圖3-4指定虛擬目錄別名</p><p> 在如圖3-4所示對話框中填寫虛擬目錄別名,例如“Ivzhi”然后單擊【下一步】按鈕,彈出如圖3-5所示的“網(wǎng)站內(nèi)容目錄”對話框。</p><p> 圖
28、3-5 選擇實(shí)際目錄</p><p> 在圖3-5所示對話框中,單擊【瀏覽】按鈕為該虛擬目錄選擇一個實(shí)際目錄(例如)“c:\\www”),然后單擊【下一步】按鈕,最后單擊【完成】按鈕,這樣名為“Ivzhii”的虛擬目錄就創(chuàng)建好了。在實(shí)際開發(fā)時,所有頁面都放到“c:\\www”下,訪問時從瀏覽器輸入“http://localhost/Ivzhi/index.asp”,該訪問“c:\\www”下的“index.as
29、p”頁面</p><p> 3.3數(shù)據(jù)庫的設(shè)計、生成與配置</p><p> 信息管理系統(tǒng)離不開數(shù)據(jù)庫,它保存系統(tǒng)用到的數(shù)據(jù)。本系統(tǒng)的數(shù)據(jù)庫主要用來保存用戶、訂單、產(chǎn)品等信息,所以數(shù)據(jù)庫主要用到的表有:用戶表、訂單表、產(chǎn)品表和分類導(dǎo)航4類表。</p><p> 設(shè)計數(shù)據(jù)庫系統(tǒng)時應(yīng)該先充分了解各個方面的需求,根據(jù)需求決定數(shù)據(jù)庫結(jié)構(gòu)。</p><
30、;p> 3.3.1 數(shù)據(jù)庫需求分析</p><p> 簡單來說系統(tǒng)有3個對象:用戶、消化產(chǎn)品和訂單。用戶瀏覽鮮花產(chǎn)品,并且在需要的時候下訂單。各這些信息提供增加、修改、保存、更新和查詢,這就要求數(shù)據(jù)庫結(jié)構(gòu)能從粉滿足這些信息的輸出和輸入。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)處理的流程,組合一份盡的數(shù)據(jù)字典,為程序設(shè)計打下基礎(chǔ)。</p><p> 系統(tǒng)需求積累用戶資源,用用戶表來記錄用戶的
31、信息,具體包括用戶的真名、地址、電話、郵編、身份證號、E-mail和密碼等基本信息。</p><p> 網(wǎng)站要給用戶展現(xiàn)產(chǎn)品,把鮮花產(chǎn)品的詳細(xì)信息介紹給用戶,需要產(chǎn)品信息表,具體包括產(chǎn)品名稱、各類屬性和所屬分類等。</p><p> 網(wǎng)站是電子商務(wù)網(wǎng)站,最終目的是為用戶服務(wù),使用戶瀏覽查后有購買的欲望,進(jìn)行購買行為。訂單類表格記錄用戶的購買行為,需要記錄購買的產(chǎn)品信息,付款人的信息,收
32、款人的信息,下單時間等。</p><p> 為了方便用戶的查找,提高網(wǎng)站的服務(wù)質(zhì)量,對產(chǎn)品進(jìn)行不同的屬性導(dǎo)航,一個鮮花產(chǎn)品分可以包含不同的屬性,方便用戶的查找,促進(jìn)用戶的消費(fèi),實(shí)現(xiàn)網(wǎng)站的價值,對具體查的屬性進(jìn)行分類,實(shí)現(xiàn)屬性導(dǎo)航表,包括產(chǎn)品屬性分類,產(chǎn)品對應(yīng)產(chǎn)品屬性的對應(yīng)表。</p><p> 通過上述系統(tǒng)功能分析,針對一般的在線花店的需求,包括如下數(shù)據(jù)表。</p>&l
33、t;p> 網(wǎng)站用戶信息表,包括數(shù)據(jù)項(xiàng)、用戶ID、用戶代號等。</p><p> 采購訂單表,包括數(shù)據(jù)項(xiàng)、訂單ID、付款人姓名、付款人電話等。</p><p> 訂單明細(xì)表,包括數(shù)據(jù)項(xiàng)、訂單明細(xì)編號、產(chǎn)品ID、訂單ID等。</p><p> 產(chǎn)品表,包括數(shù)據(jù)項(xiàng)、產(chǎn)品ID、產(chǎn)品代碼、產(chǎn)品名稱等。</p><p> 用戶評論表,包括
34、數(shù)據(jù)項(xiàng)、ID評論內(nèi)容、用戶名稱等。</p><p> 目錄屬性表,包括數(shù)據(jù)項(xiàng)、目錄編號名字、目錄編號等。</p><p> 導(dǎo)航屬性字典表,包括數(shù)據(jù)項(xiàng)、導(dǎo)航ID數(shù)字類型ID、文本類型ID。</p><p> 產(chǎn)品導(dǎo)航屬性對應(yīng)表,包括數(shù)據(jù)項(xiàng)、導(dǎo)航類型ID、導(dǎo)航名稱等。</p><p> 3.3.2數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計</p>
35、<p> 得到上面的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)以后,就可以設(shè)計出能夠滿足用戶需求的各種實(shí)體,以及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計打下基礎(chǔ)。這些實(shí)體包括各種具體信息,通過相互之間的作用形成數(shù)據(jù)的流動。</p><p> 本實(shí)例設(shè)計規(guī)劃出的實(shí)體包括網(wǎng)站用戶實(shí)體、采購訂單明細(xì)實(shí)體、產(chǎn)品實(shí)體、用戶評論實(shí)體、目錄信息實(shí)體、目錄屬性實(shí)體、導(dǎo)航屬性實(shí)體、查導(dǎo)航屬性對應(yīng)關(guān)系實(shí)體。圖3-6為實(shí)體間關(guān)系的E-R圖</
36、p><p> 圖3-6 實(shí)體關(guān)系E-R圖</p><p> 圖3-7為網(wǎng)絡(luò)用戶實(shí)體E-R圖。圖3-8為采購訂單的實(shí)體E-R圖。</p><p> 圖3-7網(wǎng)站用戶實(shí)體E-R圖 圖3-8采購訂單實(shí)體E-R圖</p><p> 圖3-9為訂單明細(xì)實(shí)體E-R圖。圖3-10為產(chǎn)品實(shí)體E-R圖。</p><p>
37、; 圖3-9訂單明細(xì)實(shí)體E-R圖 圖3-10產(chǎn)品實(shí)體E-R圖</p><p> 圖3-11為用戶評論實(shí)體E-R圖。 圖3-12為目錄信息實(shí)體E-R圖</p><p> 圖3-11 用戶評論實(shí)體E-R圖 圖3-12目錄信息實(shí)體E-R圖</p><p> 圖3-13為目錄屬性實(shí)體E-R圖。 圖3-14為導(dǎo)
38、航屬性字典實(shí)體E-R圖。</p><p> 圖3-13 目錄屬性實(shí)體E-R圖 圖3-14導(dǎo)航屬性字典實(shí)體E-R圖</p><p> 圖3-15為產(chǎn)品導(dǎo)航屬性對應(yīng)關(guān)系E-R圖</p><p> 圖3-15 產(chǎn)品導(dǎo)航屬性對應(yīng)關(guān)系E-R圖</p><p> 3.3.3數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計</p>
39、;<p> 數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計完畢后,現(xiàn)在可以將上面的數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。本章實(shí)例系統(tǒng)采用Access數(shù)據(jù)庫,因此在設(shè)計本章實(shí)例系統(tǒng)數(shù)據(jù)庫概念結(jié)構(gòu)時,需要遵循Access數(shù)據(jù)庫的語法結(jié)構(gòu)。</p><p> 在線花店系統(tǒng)中各個表的設(shè)計結(jié)果如下面表格所示。每個表格表示在數(shù)據(jù)庫中的一個表,</p><p> 表3
40、-1為用戶表,記錄某個用戶的信息。</p><p> 表3-1中autoid是用戶網(wǎng)站惟一標(biāo)識,Useid是在用戶注冊時自己選擇的名字,其他是擁護(hù)需要的屬性。</p><p> 表3-2為產(chǎn)品信息列表,記錄花店現(xiàn)有的產(chǎn)品信息。</p><p> 表3-2中Autoid是產(chǎn)品在網(wǎng)站的惟一標(biāo)識,在數(shù)據(jù)增加是自動生成,category是對應(yīng)目錄表的分類字符串。<
41、;/p><p> 表3-3中目錄信息表,記錄花店的分類信息。</p><p> 表3-3 directory目錄信息表</p><p> 表3-3中目錄用字符串分級表示,產(chǎn)品的種類對應(yīng)目錄代碼。</p><p> 表3-4為訂單信息表,記錄花店的訂單信息。</p><p> 表3-4 myorder訂單信息表
42、</p><p> 表3-4中的autoid是訂單在網(wǎng)站的惟一表識,數(shù)據(jù)增加是自動生成,category是對應(yīng)目錄表的分類字符串。訂單的付款人一般是網(wǎng)站的會員,收款人可以是自己,也可以是自己的朋友,所以對這兩方面信息分開進(jìn)行記錄。</p><p> 表3-5為訂單名細(xì)表,極力花店定單具體購買的產(chǎn)品信息。</p><p> 表3-5 orderitem訂單明細(xì)
43、表</p><p> 訂單明細(xì)表和訂單表是多對一的關(guān)系,就是一張訂單可以有多個產(chǎn)品。</p><p> 表3-6為目錄性表,記錄花店目錄的屬性。</p><p> 表3-6 directoryproperty目錄屬性表</p><p> 目錄屬性是為了更好的導(dǎo)航產(chǎn)品,目錄的產(chǎn)品有不同的屬性,比如鮮花的用途、花材、對象等屬性。<
44、/p><p> 表3-7為導(dǎo)航屬性字典表,記錄花店目錄的屬性值。</p><p> 表3-7 navigationdict導(dǎo)航屬性字典表</p><p> 導(dǎo)航屬性字典對應(yīng)表3-6目錄屬性表的auotid字段,換種說法就是目錄有什么屬性,屬性具體對應(yīng)什么值。比如鮮花目錄的用途屬性有戀情、生日、友情、祝福、婚慶、商務(wù)等不同的用途。</p><p
45、> 表3-8為產(chǎn)品導(dǎo)航屬性對應(yīng)表,記錄花店產(chǎn)品對應(yīng)的不同屬性。</p><p> 表3-8 navigationrelation 產(chǎn)品導(dǎo)航屬性對應(yīng)表</p><p> 一個產(chǎn)品可以對應(yīng)多個導(dǎo)航屬性,最終用戶可以根據(jù)不同的屬性瀏覽產(chǎn)品,方便用戶查找產(chǎn)品。</p><p> 表3-9為用戶評論表,記錄用戶對產(chǎn)品的評論。</p><p&g
46、t; 表3-9comment 用戶評論表</p><p> 表3-9記錄用戶對查的評論,userautoid為0客人,不是網(wǎng)站用戶。</p><p> 3.4公用模塊的編寫</p><p> 3.4.1數(shù)據(jù)庫連接文件</p><p> 把數(shù)據(jù)庫連接操作作封狀在一個頁面Commondb.asp中,以方便其他頁面調(diào)用。例程3-1為Com
47、mondb.asp頁面的參考代碼。</p><p> 例程3-1 數(shù)據(jù)庫連接頁面commondb.asp</p><p><b> <%</b></p><p> const myDatabase="lvzhi" 'Database name</p><p> const my
48、dblocation="db/"'location of database relative to </p><p><b> %></b></p><p> 例程3-1定義了兩個常量myDatabase和mydblocation,其中m,yDatabase為數(shù)據(jù)庫名稱,mydblocation為數(shù)據(jù)庫存放位置,如果需要修改數(shù)據(jù)庫
49、存放位置和名稱,就修改myDatabase和mydblocation這2個變量的值。</p><p> 例程3-1中引入了頁面allcommon,asp,allcommon,asp頁面中定義了數(shù)據(jù)庫連接的操作函數(shù),例程3-2為這些函數(shù)定義的參考代碼。</p><p> 例呈3-2 allcommon.asp定義的數(shù)據(jù)庫公用函數(shù)代碼</p><p> 打開數(shù)據(jù)庫
50、 最頂級函數(shù)</p><p><b> <%</b></p><p> ' Debug Message</p><p> Sub Debug (msg)</p><p> response.write msg & "<br>"</p><
51、p><b> end sub</b></p><p> ' get ComeFrom Cookie</p><p> function getComeFromCookie()</p><p><b> dim ret</b></p><p> ret=Request.Co
52、okies("comefrom")</p><p> if (comefrom=null) then</p><p><b> ret=""</b></p><p><b> end if</b></p><p> getComeFromCookie=
53、ret</p><p> end function</p><p> const myCookieKey="lvzhi"</p><p> const myUseCookies="no"</p><p> Sub SetSess (field, value)</p><p&g
54、t; If myUseCookies<>"Yes" then </p><p> Session(field)=value</p><p><b> else</b></p><p> Response.cookies(myCookiekey) (field)=value</p><p
55、><b> end if </b></p><p><b> end sub</b></p><p> Sub ProcessAccessOpen(connection)</p><p> dim strconn</p><p> strconn = "provider
56、=microsoft.jet.oledb.4.0;persist security info=false;data source=" & Server.MapPath( mydblocation & myDatabase & ".mdb")</p><p> Set connection = Server.CreateObject("ADODB.
57、Connection")</p><p> on error resume next</p><p> connection.open strConn</p><p> If connection.errors.count> 0 then</p><p> SetSess "Openerror",
58、"Open Messages<br>" & connection.errors(0).description & " <br>" & GetSess("dbc")</p><p><b> else</b></p><p> SetSess "Op
59、enerror",""</p><p><b> end if</b></p><p><b> End Sub</b></p><p> ' main database open for shop</p><p> Sub ShopOpenDataBa
60、se (connection)</p><p> ProcessAccessOpen connection</p><p><b> end sub</b></p><p> ' close database </p><p> Sub CloseRecordSet (irs)</p>&l
61、t;p><b> irs.close</b></p><p> set irs=nothing</p><p><b> end sub</b></p><p> '***************</p><p> Sub ShopCloseDatabase (connect
62、ion)</p><p> on error resume next</p><p> connection.close</p><p> set connection=nothing</p><p><b> End sub</b></p><p> 'disable prop
63、erty 對應(yīng)的產(chǎn)品列表</p><p> sub disableListFlower(property,value)</p><p><b> dim ret</b></p><p> dim myname</p><p> if (property="0") then</p>
64、<p> myname="List" &property & "F"</p><p><b> else</b></p><p> myname="List" &property & "F" &value</p>&l
65、t;p><b> end if</b></p><p> Application(myname)=""</p><p><b> end sub</b></p><p> 'List property 對應(yīng)的產(chǎn)品列表</p><p> function
66、 GetListFlower(property,value)</p><p><b> dim ret</b></p><p> dim myname</p><p> if (property="0") then</p><p> myname="List" &p
67、roperty & "F"</p><p><b> else</b></p><p> myname="List" &property & "F" &value</p><p><b> end if</b></p&
68、gt;<p> ret=Application(myname)</p><p> if (ret="") then</p><p> ret=GetListFlowerFromDB(property,value)</p><p> Application(myname)=ret</p><p><
69、;b> end if</b></p><p> GetListFlower=ret</p><p> end function</p><p> 'List property 對應(yīng)的產(chǎn)品列表 從數(shù)據(jù)庫</p><p> function GetListFlowerFromDb(property,value
70、)</p><p> Dim ret,dbc,query,rs,mycondition</p><p> shopopendatabase dbc</p><p> query = "select result from navigateresult "</p><p> mycondition="wh
71、ere sort=0 and property="&property &" and value="&value</p><p> query=query & mycondition</p><p> set rs = dbc.execute(query)</p><p><b> ret=
72、""</b></p><p> if not rs.EOF then</p><p> ret=CStr(rs("result"))</p><p><b> end if</b></p><p> closerecordset rs</p>&l
73、t;p> shopclosedatabase dbc</p><p> GetListFlowerFromDb=ret</p><p> end function</p><p> 'dir 對應(yīng)的產(chǎn)品列表</p><p> function GetDirProduct(dir)</p><p&g
74、t;<b> dim ret</b></p><p> if (dir =null or dir="") then</p><p><b> dir=""</b></p><p><b> end if</b></p><p>
75、 dim dirname</p><p> dirname="dir" & dir</p><p> ret=Application(dirname)</p><p> if (ret="") then</p><p> ret=GetDirProductFromDB(dir)</
76、p><p> Application(dirname)=ret</p><p><b> end if</b></p><p> GetDirProduct=ret</p><p> end function</p><p> 'dir 對應(yīng)的產(chǎn)品列表,從數(shù)據(jù)庫讀出</p>
77、;<p> function GetDirProductFromDB(dir)</p><p><b> dim ret</b></p><p> Dim dbc,query,rs</p><p> shopopendatabase dbc</p><p> if (dir=""
78、;) then '讀出所有產(chǎn)品</p><p> query = "select autoid from product order by priority"</p><p><b> else</b></p><p> query = "select autoid from product w
79、here Left(category,"+Cstr(len(dir))+")='"&dir&"'"</p><p><b> end if</b></p><p> set rs = dbc.execute(query)</p><p><b>
80、 ret=""</b></p><p> Do WHILE not rs.EOF</p><p> if (ret="") then</p><p> ret=CStr(rs("autoid"))</p><p><b> else</b>&
81、lt;/p><p> ret=ret+","+CStr(rs("autoid"))</p><p><b> end if</b></p><p> rs.movenext </p><p><b> Loop</b></p>&l
82、t;p> closerecordset rs</p><p> shopclosedatabase dbc</p><p> GetDirProductFromDb=ret</p><p> end function</p><p><b> 產(chǎn)品類定義</b></p><p>
83、 'Class Product</p><p> 'public name,autoid,saleprice,Desc,marketPrice,vipPrice,netImageSmall,netImageMid,netImageBig</p><p> 'End Class</p><p><b> '得到對應(yīng)的產(chǎn)
84、品</b></p><p> function GetProduct(ID)</p><p><b> dim ret</b></p><p> if (ID =null or ID="") then</p><p><b> ID="1"</b
85、></p><p><b> end if</b></p><p> dim productname</p><p> productname="P" & ID</p><p> ret=Application(productname)</p><p>
86、 if ( not IsArray(ret)) then</p><p> ret=GetProductFromDB(ID)</p><p> Application(productname)=ret</p><p><b> end if</b></p><p> GetProduct=Application(
87、productname)</p><p> end function</p><p><b> '得到對應(yīng)的產(chǎn)品</b></p><p> sub disableProduct(ID)</p><p><b> dim ret</b></p><p> if
88、 (ID =null or ID="") then</p><p><b> ID="1"</b></p><p><b> end if</b></p><p> dim productname</p><p> productname="
89、P" & ID</p><p> Application(productname)=""</p><p><b> end sub</b></p><p> '對應(yīng)的產(chǎn)品,從數(shù)據(jù)庫讀出</p><p> dim FIELDAUTOID,FIELDNAME,FIELDS
90、ALEPRICE,FIELDDESC,FIELDMARKETPRICE</p><p> dim FIELDVIPPRICE,FIELDNETIMAGESMALL,FIELDNETIMAGEMID,FIELDNETIMAGEBIG,FIELDCODE</p><p> FIELDAUTOID=0</p><p> FIELDNAME=1</p>
91、<p> FIELDSALEPRICE=2</p><p> FIELDDESC=3</p><p> FIELDMARKETPRICE=4</p><p> FIELDVIPPRICE=5</p><p> FIELDNETIMAGESMALL=6</p><p> FIELDNETIMAGEM
92、ID=7</p><p> FIELDNETIMAGEBIG=8</p><p> FIELDCODE=9</p><p> function GetProductFromDB(ID)</p><p> dim ret(10)</p><p> Dim dbc,query,rs</p><
93、p> shopopendatabase dbc</p><p> query = "select * from product where autoid="&ID</p><p> set rs = dbc.execute(query)</p><p> if not rs.EOF then</p><
94、;p> ret(FIELDAUTOID)=rs("autoid")</p><p> ret(FIELDNAME)=rs("name")</p><p> ret(FIELDSALEPRICE)=rs("saleprice")</p><p> ret(FIELDDESC)=rs("
95、description")</p><p> ret(FIELDMARKETPRICE)=rs("marketprice")</p><p> ret(FIELDVIPPRICE)=rs("memberprice")</p><p> ret(FIELDNETIMAGESMALL)=rs("myima
96、geurl")</p><p> ret(FIELDNETIMAGEMID)=rs("myimageurl")</p><p> ret(FIELDNETIMAGEBIG)=rs("myimageurl")</p><p> ret(FIELDNETIMAGESMALL)=rs("netimageur
97、lsmall")</p><p> 'ret(FIELDNETIMAGEMID)=rs("netimageurlmid")</p><p> 'ret(FIELDNETIMAGEBIG)=rs("netimageurlbig")</p><p> 'ret(FIELDCODE)=rs(&
98、quot;code")</p><p><b> else</b></p><p> ret(FIELDAUTOID)=-1</p><p><b> end if</b></p><p> closerecordset rs</p><p> shopc
99、losedatabase dbc</p><p> GetProductFromDB=ret</p><p> end function</p><p><b> %> </b></p><p> 3.4.2頁面頭文件</p><p> 為了實(shí)現(xiàn)代碼復(fù)用,把頭文件設(shè)計成公用模塊,單
100、獨(dú)保存為一個文件,其他頁面應(yīng)用的時候只要包含這個頭文件就可以了。 頭文件中主要放置網(wǎng)站標(biāo)志和各個2級頻道,保存成HTML文件格式,放置到文件夾inc/下,文件名稱為top.html.這樣其他頁面只要應(yīng)用<!_ _#include file=”inc/top.html”_ _>,就可以使其他頁面具有風(fēng)格統(tǒng)一的“頭”。</p><p> 圖3-16 網(wǎng)站頭文件預(yù)覽果圖</p>&l
101、t;p> 3.4.3頁面尾文件</p><p> 和頁頭一樣,我們把版權(quán)聲明等信息保存在尾文件bottom.html中,本實(shí)例的尾部文件預(yù)覽果如圖3-17所示。</p><p><b> 用戶登錄判斷</b></p><p> 用戶登錄判定一般由兩個頁面組成,頁面login.asp提供表單讓用戶輸入用戶名和密碼,當(dāng)用戶單擊頁面中【
102、登錄】按鈕時,把用戶名、密碼提交到另一個頁面userlogindo.asp,由userlogindo.asp頁面作具體的登錄處理。</p><p> Login.asp就是一個簡單的包含表單的HTML頁面,并引入公用頭尾文件,不過login.asp需要用到j(luò)avascipt驗(yàn)證表單,防止用戶輸入空信息。圖3-18為網(wǎng)站登錄頁面login.asp.的預(yù)覽效果。</p><p> 例程3-
103、3為login.asp頁面中表單驗(yàn)證的javascript代碼。</p><p> 例程3-3 javascript校驗(yàn)代碼</p><p> <script language="javascript"></p><p> function userloginsubmit()</p><p><b&
104、gt; {</b></p><p> var flag=false;</p><p> if(document.loginForm.USERID.value==null|| document.loginForm.USERID.value=="")</p><p><b> {</b></p>
105、<p> alert("請輸入您的用戶名!");</p><p> document.loginForm.USERID.focus();</p><p> flag=true;</p><p><b> }</b></p><p> if(document.loginForm.P
106、ASS.value==null|| document.loginForm.PASS.value=="")</p><p><b> {</b></p><p> alert("請輸入密碼!");</p><p> if (flag==false)</p><p> docu
107、ment.loginForm.PASS.focus();</p><p> flag=true;</p><p><b> }</b></p><p> if(flag==false)</p><p><b> {</b></p><p> document.log
108、inForm.submit();</p><p><b> } </b></p><p> return false; </p><p><b> }</b></p><p> function userloginkeydown()</p><p&g
109、t;<b> {</b></p><p> if (window.event.keyCode=="13")</p><p> userloginsubmit();</p><p><b> }</b></p><p> function userloginuserid(
110、)</p><p><b> {</b></p><p> if (window.event.keyCode=="13")</p><p> document.loginForm.PASS.focus();</p><p><b> }</b></p>&l
111、t;p><b> </script></b></p><p> 在例程3-3中函數(shù)userloginsubmit()主要在用戶單擊【登錄】按鈕的時候驗(yàn)證用戶輸入的用戶名、密碼是否為空。</p><p> 函數(shù)userloginkeydown(),主要完成當(dāng)用戶按回車鍵時,提交表單,也就時說當(dāng)用戶輸入用戶名、密碼后單擊【登錄】按鈕或者按回車鍵都會
112、提交表單。實(shí)現(xiàn)這個功能是為了用戶界面友好,方便最終用戶的使用。</p><p> 函數(shù)userloginuserid()主要完成當(dāng)用戶輸入完用戶名按回車時,焦點(diǎn)跳到輸入密碼的文本框中。</p><p> Userlogindo.asp主要完成用戶登錄的判定,把用戶登錄信息更新數(shù)據(jù)庫和session等,例程3-4為頁面Uselogindo.asp登錄代碼。</p><
113、p> 例程 3-4 Userlogindo.asp 登錄代碼</p><p><b> <%</b></p><p> dim dbc, url</p><p> dim forwardURL</p><p> dim strpassword, returnurl</p><p&
114、gt; strPassword=Request("strPassword")</p><p> stremail=request("stremail")</p><p> strpassword=replace(strpassword,"=","")</p><p> strem
115、ail=replace(stremail,"=","")</p><p> stremail=replace(stremail,"'","''")</p><p> strpassword=replace(strpassword,"'","&qu
116、ot;)</p><p> returnurl=request("returnurl")</p><p> if strEmail="" then</p><p> sError = sError & "請輸入Email<br>"</p><p><b
117、> end if</b></p><p> if strPassword="" then</p><p> sError = sError & "請輸入口令<br>"</p><p><b> end if</b></p><p>
118、If sError="" then</p><p> RetrieveLoginData</p><p><b> else</b></p><p> Serror= "請登錄" & "<br>" & Serror</p><p&g
119、t;<b> end if</b></p><p> setsess "Loginerror",Serror </p><p> Setupreturnurl url</p><p> Response.redirect url</p><p> Sub RetrieveLogindat
120、a</p><p> Dim fieldvalue</p><p> If GetSess("Login")="" then</p><p> SetSess "Login","Force"</p><p><b> end if</b&g
121、t;</p><p> LocateCustomer strLastName, stremail , strpassword</p><p> If strCustomerID <>"" then</p><p> LngLoginCount=lngLoginCount+1</p><p> Updat
122、eCustomerSessionData</p><p> UpdateLoginData</p><p> SetSess "Login",strlastname </p><p> SetSess "realname",strlastname </p><p><b> Else&
123、lt;/b></p><p> SError = SError & getlang("langLoginLocateFail") </p><p> SetSess "Login", ""</p><p><b> end if</b></p><
124、;p> ShopCloseDatabase dbc</p><p> set rs=nothing</p><p><b> end sub</b></p><p> Sub UpdateLoginData</p><p><b> Dim dbc</b></p>&l
125、t;p> 'on error resume next</p><p> OpenCustomerDB dbc</p><p> 'response.write "Login count" & lngLoginCount</p><p> sql = "update customers set &qu
126、ot;</p><p> sql = sql & "logincount=" & lnglogincount</p><p> 'sql = sql & ",lastlogindate='" & date() & "'"</p><p>
127、 sql = sql & ",lastlogindate=" & datedelimit(date() )</p><p> sql = sql & " where contactid=" & strcustomerid</p><p> dbc.execute(sql)</p><p>
128、 ShopCloseDatabase dbc</p><p><b> end sub</b></p><p> ' determine where to go to</p><p> Sub SetupReturnurl (url)</p><p> if returnurl<>"
129、;" then </p><p> if Serror="" then</p><p> url=returnurl</p><p><b> exit sub</b></p><p><b> else</b></p><p> ur
130、l="UserLogin.asp"</p><p><b> end if</b></p><p><b> exit sub</b></p><p> end if </p><p> If Getsess("Followonurl")
131、="" and getsess("Currenturl")="" then</p><p> If Serror="" then </p><p> url=getconfig("xhome")</p><p><b> else</b>&
132、lt;/p><p> url="UserLogin.asp"</p><p><b> end if</b></p><p> exit sub </p><p><b> end if </b></p><p> If Serror=
133、"" then </p><p> url=GetSess("FollowonURL")</p><p><b> else</b></p><p> url=getSess("CurrentURL")</p><p><b> end if&
134、lt;/b></p><p><b> end sub</b></p><p><b> %></b></p><p> 3.5前臺界面設(shè)計與實(shí)現(xiàn)</p><p><b> 3.5.1首頁設(shè)計</b></p><p> 一般的電子商
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計----網(wǎng)上花店系統(tǒng)
- 畢業(yè)設(shè)計---網(wǎng)上鮮花店管理系統(tǒng)
- 畢業(yè)設(shè)計---網(wǎng)上鮮花店管理系統(tǒng)
- 網(wǎng)上鮮花店管理系統(tǒng)畢業(yè)設(shè)計
- 網(wǎng)上花店訂購系統(tǒng)畢業(yè)設(shè)計
- 網(wǎng)上花店系統(tǒng)畢業(yè)設(shè)計論文
- 畢業(yè)設(shè)計---網(wǎng)上花店管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)
- 畢業(yè)設(shè)計---花店網(wǎng)上銷售系統(tǒng)的設(shè)計
- jsp網(wǎng)上鮮花店管理系統(tǒng)畢業(yè)設(shè)計論文
- 基于web的網(wǎng)上花店系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)論文-“有間花店”網(wǎng)上花店管理系統(tǒng)
- 網(wǎng)上花店管理系統(tǒng)_畢業(yè)論文
- 畢業(yè)設(shè)計--“網(wǎng)上花店”的設(shè)計與制作
- 畢業(yè)設(shè)計--網(wǎng)上花店的設(shè)計與開發(fā)
- 網(wǎng)上花店系統(tǒng)畢業(yè)論文
- 網(wǎng)上花店管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(論文)基于jsp技術(shù)的網(wǎng)上花店系統(tǒng)設(shè)計與實(shí)現(xiàn)
- 畢業(yè)設(shè)計--鮮花店網(wǎng)上訂花系統(tǒng)分析與設(shè)計
- 網(wǎng)上花店管理系統(tǒng)畢業(yè)論文(含外文翻譯)
- 網(wǎng)上花店管理系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
評論
0/150
提交評論