電子商城系統(tǒng)畢業(yè)論文_第1頁
電子商城系統(tǒng)畢業(yè)論文_第2頁
電子商城系統(tǒng)畢業(yè)論文_第3頁
電子商城系統(tǒng)畢業(yè)論文_第4頁
電子商城系統(tǒng)畢業(yè)論文_第5頁
已閱讀5頁,還剩66頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、第一章 前 言隨著Internet的迅猛發(fā)展,電子商務已逐漸走向千家萬戶,它已經(jīng)開始影響人們的日常生活的各個方面,同時我們也開始意識到其中蘊含的巨大商機及商業(yè)價值,并開始投身于電子商務活動。電子商務可以通過IE瀏覽器,實現(xiàn)消費者的網(wǎng)上購物,賣家及中介人之間的交易,它是在線網(wǎng)銀支付的一種新型商業(yè)運營模式。電子商務是網(wǎng)絡技術應用的全新發(fā)展方向。Internet本身所具有的開放性、全球性、低成本、高效率的特點,也成為電子商務的內(nèi)在特征,并使得電子商務大大超越了作為一種新的貿(mào)易形式所具有的價值。它不僅會改變企業(yè)本身的生產(chǎn)、經(jīng)營、管理活動,而且將影響到整個社會的經(jīng)濟運行與結(jié)構(gòu)。電子商城的崛起對傳統(tǒng)的購物

2、方式體系產(chǎn)生了強烈的沖擊,有效地縮短了貨物發(fā)行環(huán)節(jié),將廣大消費者和營銷商緊密地結(jié)合在一起,大大提高了物質(zhì)流通率。淘寶網(wǎng)以及當當網(wǎng)已經(jīng)為我們做出了巨大的榜樣,它也告訴我們,在網(wǎng)上開設商城是完全可行的,電子商城利用網(wǎng)絡這個平臺出售各式各樣的貨物,其中包括電子產(chǎn)品,食品,化妝品,服裝,寵物等,實現(xiàn)了坐在家里就可以輕松購物。顧客可以通過網(wǎng)站瀏覽到各式商品,使用網(wǎng)銀直接選購其所需要的商品,通過郵政部門以及各個快遞公司把貨物送到顧客家中。購物網(wǎng)站的優(yōu)點是購物的便捷和快速,提高了購物效率。顧客也可以給店主留言,寫下意見和感想。目前,中國網(wǎng)民已經(jīng)突破2億大關,網(wǎng)站數(shù)量已達到131萬個,其中16.7%的網(wǎng)民經(jīng)常

3、訪問購物網(wǎng)站,隨著國內(nèi)上網(wǎng)費用的下調(diào)以及網(wǎng)速的大幅度提高,瀏覽購物網(wǎng)站的網(wǎng)民總數(shù)也會穩(wěn)步提升。由此可見在網(wǎng)上開商城已經(jīng)是大勢所趨的。通過以上數(shù)據(jù),我們可以欣喜的發(fā)現(xiàn)在網(wǎng)上開設商城的優(yōu)勢:(1)投資少,見效快;(2)銷售時間不受限制;(3)銷售地點不受限制。本次畢業(yè)設計主要是使用HTML基本語言,ASP、Vbscript腳本語言、DREAMWEAVER等設計網(wǎng)頁,使用數(shù)據(jù)庫知識(ACCESS)設計數(shù)據(jù)庫,使用SQL語句完成查詢,修改,刪除數(shù)據(jù)等功能,最后完成整個電子商城系統(tǒng)的調(diào)試。第二章 設計方案本次畢業(yè)設計使用的ASP(Active Server Pages),它既不是一種程序語言,也不是一種

4、開發(fā)工具,而是一種技術框架,不必使用微軟的產(chǎn)品就能編寫它的代碼,也可以產(chǎn)生和執(zhí)行動態(tài)、交互式、高效率的服務器應用程序。運用ASP可將VBscript、javascript等腳本語言嵌入到HTML中,便可快速完成網(wǎng)站的應用程序,無需編譯,可在服務器端直接執(zhí)行。ASP容易編寫,使用普通的文本編輯器編寫,如記事本就可以完成。由于腳本在服務器上而不是在客戶端運行,ASP所使用的腳本語言都在服務器上運行,用戶端的瀏覽器不需要提供任何別的支持,這樣大大提高了用戶與服務器之間的交互的速度。此外,它可通過內(nèi)置的組件來實現(xiàn)更強大的功能,如使用ADO就可以輕松地訪問數(shù)據(jù)庫。此次電子商城系統(tǒng)采用B/S(瀏覽器/服務

5、器)模式開發(fā),在此模式下,用戶主要通過客戶端瀏覽器瀏覽系統(tǒng)的工作界面,極少部分事務在瀏覽器端(Browser)實現(xiàn),主要事務在服務器端(Server)實現(xiàn)。這種模式通過IE通信,不受地域的限制。從而減輕了系統(tǒng)維護和升級的成本和工作量,降低了用戶的總體成本。電子商城系統(tǒng)的特點是用戶在客戶端登陸系統(tǒng),然后瀏覽,管理或購買系統(tǒng)中的商品。該系統(tǒng)面向的用戶是不確定的。如果要求用戶下載安裝軟件才能瀏覽商品,會增加用戶瀏覽商品的難度,大大減少用戶數(shù)量。電子商城系統(tǒng)應該支持跨平臺管理,其用戶不必下載安裝軟件。B/S模式支持跨平臺操作,只需安裝瀏覽器即可。因此電子商城系統(tǒng)利用這種模式實現(xiàn)。從而為不同用戶提供了統(tǒng)

6、一的界面,使得界面易于維護。隨著Microsoft公司的不斷改進和完善,ACCESS正逐漸成為目前最為方便的中小型數(shù)據(jù)庫管理系統(tǒng)。ACCESS支持的SQL指令非常齊全。同時ACCESS驅(qū)動程序的執(zhí)行效率非常高。使用ACCESS數(shù)據(jù)庫開發(fā)系統(tǒng)易于開發(fā)者掌握并解決可能發(fā)生的問題。基于以上原因在本次設計中使用ASPACCESS來實現(xiàn)本課題。第三章 電子商城系統(tǒng)的設計與分析3.1 電子商城系統(tǒng)簡介該電子商城系統(tǒng)是基于WEB開發(fā)的,以構(gòu)建網(wǎng)上電腦產(chǎn)品購物網(wǎng)站為目標,由前臺購物、后臺管理兩大部分組成。電子商城系統(tǒng)主要實現(xiàn)用戶注冊、用戶登錄、分類瀏覽商品、查看商品介紹、購物車、在線購買、瀏覽新聞公告、商品的

7、投訴以及商品管理、新聞公告管理、投訴管理,會員管理等功能。根據(jù)這些功能要求,將整個系統(tǒng)分為兩大部分:一部分是用戶使用部分,包括用戶登錄、分類瀏覽,購買商品,在線支付等;另一部分是后臺管理部分,這部分功能必須通過管理員身份驗證才能使用,包括商品管理、新聞管理、商品投訴管理和會員管理,客戶也可以通過論壇來提出意見和建議。電子商城系統(tǒng)就是要通過方便快捷的功能、簡潔明了的界面、完善的后臺管理來滿足服客戶的需要。3.2 軟件目標設計(1)系統(tǒng)的用戶登錄和身份驗證;系統(tǒng)允許用戶注冊,注冊的用戶需要身份驗證才能發(fā)布商品;用戶進入系統(tǒng)時,需要進行身份驗證;只有特定權(quán)限的用戶才能進入特定權(quán)限的界面。(2)在線銷

8、售商品:無論是注冊用戶,還是未注冊用戶都允許瀏覽所有商品,并查看所有商品的詳細信息;無論是注冊用戶,還是未注冊用戶都允許按類別查找商品;允許注冊的用戶通過在線付款形式購買商品;系統(tǒng)為注冊用戶提供購物車,并允許用戶管理購物車。(3)在線管理商品:只有管理員才可以在線管理商品,即管理商品時需要驗證管理員身份;不同級別的管理員只能管理相應的商品,如系統(tǒng)管理員可以管理系統(tǒng)中所有的商品,一般管理員只能管理自己上傳的商品。(4)在線管理用戶:系統(tǒng)管理員可以添加,驗證和查詢用戶;系統(tǒng)管理員可以修改系統(tǒng)中的任何用戶信息;系統(tǒng)管理員可以刪除任何用戶。(5)在線管理公告:系統(tǒng)管理員可以添加公告;系統(tǒng)管理員可以修改

9、公告;系統(tǒng)管理員可以刪除公告。(6)在線管理投訴:任何購買了商品的用戶都可以發(fā)表對購買商品的投訴;只有管理員才可以刪除已經(jīng)回復的投訴;管理員可以處理投訴,也可以通過回復投訴問題來解決問題。3.3 設計原則軟件系統(tǒng)開發(fā)設計原則一般包括以下四個方面:(1)經(jīng)濟,實用的原則;(2)兼容性原則;(3)可靠,有效性原則;(4)安全性原則。由于本電子商城系統(tǒng)只是一個畢業(yè)設計作品,要成為可行性系統(tǒng)還需要很多改進。因此,在本系統(tǒng)的開發(fā)過程中,并沒有象上面提到的那樣嚴格地按照要求來進行制作開發(fā),只是在對網(wǎng)上購物網(wǎng)站了解的基礎上,盡可能地使本系統(tǒng)所完成的工作符合實際。另外考慮到了系統(tǒng)的易操作性,因此在系統(tǒng)的界面設

10、計過程中,盡可能地為用戶提供了一個友善、清晰簡潔的網(wǎng)絡界面。3.4 設計思路本課題為電子商城系統(tǒng)的軟件設計,在圖書館關于該課題的信息比較多,所以在對它進行總體設計的時候,首先對ASP的6大對象做了幾周的學習,了解了其中各大對象的一些屬性和方法。又花了一些時間學習SQL語句,用ACCESS對后臺數(shù)據(jù)庫進行了設計。在完成數(shù)據(jù)庫的設計后,開始對網(wǎng)站頁面進行設計。對用戶權(quán)限以及網(wǎng)站的安全性進行了考慮,使用DoChar()函數(shù)屏蔽了一些特殊的字符,如一些非法用戶會在IE地址欄鍵入一些SQL語句非法連接數(shù)據(jù)庫,正是使用此函數(shù)把一些非法的字符替換成空格符輸出,以及在數(shù)據(jù)庫的設計中加入Check字段來檢測用戶

11、是否為驗證用戶,非驗證用戶只能瀏覽網(wǎng)站的部分功能。最后,在基本功能實現(xiàn)以后,再對網(wǎng)站進行反復地測試和修改,以期望達到最好的效果。3.5 需求分析該系統(tǒng)是基于B/S(瀏覽器/服務器)架構(gòu)的系統(tǒng),主要完成商品的瀏覽,購買,以及在后臺管理商品;新聞公告的添加、刪除、修改(更新),會員的在線購物與對商品的投訴,用戶在論壇上抒發(fā)自己的感想等。此系統(tǒng)分為前臺購物和后臺管理。前臺購物是友好的操作界面,供用戶注冊、瀏覽、訂購商品;后臺管理是提供給管理員的,其中包括:商品管理、用戶管理、公告管理,投訴管理等。使管理員從繁瑣的手工操作中解脫出來,并提高了工作效率。按照系統(tǒng)功能的實現(xiàn),本系統(tǒng)可以劃分為以下幾個功能模

12、塊:管理用戶模塊,管理商品模塊,管理商品類別模塊,管理商品投訴模塊,管理公告模塊等。管理用戶模塊包括了用戶注冊和驗證,修改用戶信息,修改用戶密碼以及刪除用戶。管理商品模塊包括商品上傳,修改商品信息,刪除商品,增加商品圖片,以及修改和刪除商品的銷售記錄和瀏覽記錄。管理商品類別模塊包括添加,修改,刪除商品類別等功能。管理商品投訴模塊包括回復商品投訴,解決商品投訴問題和刪除商品投訴,商品投訴需要保存商品的編號,購買商品的訂單號及購買時間等信息。管理公告模塊包括添加,修改,刪除公告,公告包括公告的標題,公告的內(nèi)容,以及發(fā)布時間等信息。由于電子商城的商品數(shù)量可能非常龐大,因此在商品瀏覽上,使用了分頁瀏覽

13、導航。用戶可以通過點擊上一頁、下一頁、首頁、尾頁進行分頁瀏覽。該系統(tǒng)對可靠性、易維護性、安全性、可操作性等性能有較高的要求??煽啃?要求系統(tǒng)在發(fā)生故障或輸入數(shù)據(jù)不合理等情況下有較高的要求;易維護性-系統(tǒng)的變更(因系統(tǒng)需求變化和彌補系統(tǒng)缺陷而引起)要簡單易行;安全性-本系統(tǒng)所處理的數(shù)據(jù)都要具有實際意義,不能隨意存取和改動。因此,必須對系統(tǒng)數(shù)據(jù)的存取和改動進行控制,對系統(tǒng)數(shù)據(jù)進行有效的保護,以杜絕對數(shù)據(jù)的非法操作和防止計算機病毒的破壞;可操作性-本系統(tǒng)的操作人員是一般管理人員而非計算機專業(yè)人員,為使本系統(tǒng)有效地發(fā)揮作用,要求本系統(tǒng)容易理解,人機界面簡明、清晰、直觀,功能實用,操作簡單方便,上機培訓

14、量小。此外,系統(tǒng)還需有較快的響應速度,以盡量減少工作人員的等待時間。根據(jù)前臺用戶的需求,畫出以下E-R圖:實體類型 實體間聯(lián)系 屬性 圖3.1 ER圖的元素說明用戶用戶名密碼權(quán)限地址訂購數(shù)量總金額商品信息商品編號類型編號價格商品名稱投訴投訴內(nèi)容nmm屬于m商品類型1類型編號類型名稱發(fā)布1公告信息m用戶編號公告內(nèi)容貨存用戶編號圖3.2 電子商城系統(tǒng)ER圖將用戶與商品信息表通過訂購關系相聯(lián)系,可以將此m:n二元聯(lián)系轉(zhuǎn)換為關系模型。關系模型為:用戶(用戶編號,密碼,用戶名,權(quán)限,地址);商品信息(商品編號,類型編號,商品名,價格,貨存)訂購(用戶編號,商品編號,數(shù)量,總金額)將用戶與商品信息表通過投

15、訴關系相聯(lián)系,可以將此m:n二元聯(lián)系轉(zhuǎn)換為關系模型。關系模型為:用戶(用戶編號,密碼,用戶名,權(quán)限,地址);商品信息(商品編號,類型編號,商品名,價格,貨存)投訴(用戶編號,商品編號,投訴內(nèi)容)公告信息表用戶編號公告標題公告內(nèi)容用戶編號發(fā)布時間內(nèi)容圖3.3公告信息實體屬性圖用戶投訴表投訴時間用戶編號投訴內(nèi)容商品編號投訴編號成功類別電子商務模塊失敗類別電子商務模塊出錯頁面成功類別電子商務模塊失敗類別電子商務模塊開始解決方案解決狀態(tài)圖3.4投訴信息實體屬性圖通過以上的分析可知,該系統(tǒng)擁有用戶、商品類別、商品、訂單、投訴和公告的實體,其中實體對應數(shù)據(jù)庫的表,屬性對應表中的字段,關系對應表之間的聯(lián)系。

16、3.6 系統(tǒng)概要設計在軟件需求分析階段,搞清楚了軟件“做什么”的問題?,F(xiàn)在所要做的就是要把軟件“做什么”的邏輯模型變換為“怎么做”的物理模型,即著手實現(xiàn)軟件的需求。首先,需要描述的是系統(tǒng)的總的體系結(jié)構(gòu)。 系統(tǒng)結(jié)構(gòu)設計系統(tǒng)的概要設計中最重要的就是系統(tǒng)的模塊化。模塊化是指解決一個復雜問題時自頂向下逐層把軟件系統(tǒng)劃分成若干個模塊的過程。每個模塊完成一個特定的功能。所有的模塊按某種方法組織起來,成為一個整體,完成整個系統(tǒng)所要求的功能。將系統(tǒng)劃分為多個模塊是為了降低軟件系統(tǒng)的復雜性,提高可讀性、可維護性,但模塊的劃分不能是任意的,應盡量保持其獨立性。也就是說,每個模塊只完成系統(tǒng)要求的獨立的子功能,并且與

17、其他模塊的聯(lián)系最少,而且接口簡單,即盡量做到高內(nèi)聚低耦合,提高模塊的獨立性,為設計高質(zhì)量的軟件結(jié)構(gòu)奠定基礎。在系統(tǒng)概要設計中采用結(jié)構(gòu)化設計(Structure Design,簡稱SD),SD以需求分析階段產(chǎn)生的數(shù)據(jù)流圖DFD為基礎,按照一定的步驟映射成軟件結(jié)構(gòu)。首先將整個系統(tǒng)劃分為幾個小問題、小模塊。在本系統(tǒng)中,設計了瀏覽公告模塊,瀏覽商品模塊,購買商品模塊,商品投訴模塊,用戶注冊模塊,公告管理模塊,商品管理模塊,訂單管理模塊,投訴管理模塊,用戶管理模塊,網(wǎng)站計數(shù)器模塊。 功能模塊規(guī)劃及分析為了便于電子商城系統(tǒng)的設計開發(fā),根據(jù)系統(tǒng)功能要求,使用了模塊化設計,整個電子商城系統(tǒng)可以分為以下11個功

18、能模塊:瀏覽公告模塊:此模塊實現(xiàn)前臺的公告信息瀏覽,無權(quán)限限制,注冊用戶和非注冊用戶都可以瀏覽公告。瀏覽商品模塊:此模塊實現(xiàn)前臺的商品及商品信息瀏覽,無權(quán)限限制,注冊用戶和非注冊用戶都可以瀏覽商品,并查看所有商品信息。購買商品模塊:此模塊專門提供給注冊用戶以及其以上級別的用戶使用,允許注冊的用戶通過在線付款形式購買商品,系統(tǒng)為注冊用戶提供購物車,并允許用戶管理購物車,系統(tǒng)為通過驗證的用戶提供訂單管理功能,并允許這些用戶處理相應的訂單。商品投訴模塊:此模塊專門提供給注冊用戶以及其以上級別的用戶使用,允許購買此商品的用戶對商品進行投訴,同時由管理員提出解決方案。用戶注冊模塊:此模塊包括會員的注冊,

19、相關資料的填寫,以及用戶的登陸,資料的修改。公告管理:此模塊專門提供給管理員使用,系統(tǒng)管理員可以添加公告,系統(tǒng)管理員可以修改公告,系統(tǒng)管理員可以刪除公告。商品管理模塊:此模塊中只有管理員才可以在線管理商品,即管理商品時需要驗證管理員身份,不同級別的管理員只能管理相應的商品,如系統(tǒng)管理員可以管理系統(tǒng)中所有的商品,一般管理員只能管理自己上傳的商品。訂單管理模塊:不同級別的管理員只能管理相應的訂單,如系統(tǒng)管理員可以管理系統(tǒng)中所有商品的訂單,一般管理員只能管理自己上傳商品的訂單。投訴管理模塊:任何購買了商品的用戶都可以發(fā)表對購買商品的投訴,只有管理員才可以刪除已經(jīng)回復的投訴,管理員可以處理投訴,也可以

20、通過回復投訴來解決問題。用戶管理模塊:系統(tǒng)管理員可以添加,驗證和查詢用戶,系統(tǒng)管理員可以修改系統(tǒng)中的任何用戶信息,系統(tǒng)管理員可以刪除任何用戶。網(wǎng)站計數(shù)器模塊:此模塊是用來統(tǒng)計并顯示網(wǎng)站訪問總?cè)藬?shù)、本日訪問人數(shù)和在線人數(shù)。在各個模塊的設計中注重它們之間的相對獨立性,減少它們之間的耦合,減輕模塊化設計的難度。各模塊的關系見圖3.5系統(tǒng)功能模塊圖所示。電子商城系統(tǒng)前臺購物后臺管理瀏覽商品購買商品商品投訴用戶注冊公告管理商品管理訂單管理投訴管理用戶管理計數(shù)器瀏覽公告圖3.5系統(tǒng)功能模塊圖第四章 系統(tǒng)數(shù)據(jù)庫的設計4.1 數(shù)據(jù)庫的概念結(jié)構(gòu)設計根據(jù)系統(tǒng)的需求分析和數(shù)據(jù)庫的需求分析,同時根據(jù)相關部分的數(shù)據(jù)流程

21、圖,對系統(tǒng)數(shù)據(jù)庫進行概念結(jié)構(gòu)設計。根據(jù)數(shù)據(jù)關系模型和數(shù)據(jù)庫關系模式的范式,我們創(chuàng)建了電子商城系統(tǒng)數(shù)據(jù)表,本系統(tǒng)共有9個數(shù)據(jù)表,分別是:用戶信息表(users),商品類型表(GoodType),商品信息表(Goods),計數(shù)器信息表(webcount),訂單信息表(Shop_list),公告信息表(Board),用戶投訴表(Complain),論壇基本信息表(bbsconfig),論壇留言回復信息表(reforum)。 建立數(shù)據(jù)庫的原則在建立數(shù)據(jù)庫時,由于表中儲存信息的不同,所以表中所需的字段也不一樣,在確定所需字段時有以下五個原則:1.描述不同主題的字段應屬于不同的表,通過定義之間的關系,可以

22、將多個表中的字段進行數(shù)據(jù)組合,生成各種表單或報表;2.不要在表中儲存通過推導或計算得到的數(shù)據(jù);3.收集所需的全部信息。應全面檢查書面的表單和報表,確定所需的數(shù)據(jù)都已包含在所設計的表中或可以由這些表計算出來;4.以最小的邏輯單位儲存信息,應盡量把信息分解成比較小的邏輯單位;5.對于主關鍵字段,ACCESS不允許其有重復值或NULL值。 建立字段的原則在實際選擇和確定數(shù)據(jù)類型時,應結(jié)合字段的自身情況并考慮以下四點:1.該字段用于儲存什么類型的值;2.要對字段中的值執(zhí)行什么類型的運算;3.是否要用字段進行篩選或排序;4.是否用字段對記錄進行分組。4.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設計數(shù)據(jù)庫的概念結(jié)構(gòu)設計完畢后,

23、可以將數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫系統(tǒng)所支持的實際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。在電子商城系統(tǒng)中,共有9個數(shù)據(jù)表,分別是:用戶信息表(users),商品類型表(GoodType),商品信息表(Goods),計數(shù)器信息表(webcount),訂單信息表(Shop_list),公告信息表(Board),用戶投訴表(Complain),論壇基本信息表(bbsconfig),論壇留言回復信息表(reforum)。用戶信息表(users)信息見表4-1所示。表4-1用戶信息表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述ID主鍵自動編號4無否用戶編號UserId文本12無否用戶名PWD文本12

24、無否用戶密碼Sex是/否1無否性別Address文本100無否地址Email文本30無是郵箱Telephone文本20無否電話Allow數(shù)字1無否用戶類別權(quán)限Usercheck是/否1無否用戶是否通過驗證創(chuàng)建該表時,需要創(chuàng)建一個系統(tǒng)管理員admin。本系統(tǒng)系統(tǒng)管理員的Allow字段為“1”,普通管理員為“2”,普通注冊用戶為“3”。Usercheck=0,未驗證用戶;=1,已驗證用戶。商品類型表(GoodsType)信息見表4-2所示。表4-2商品類型表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述ID 主鍵自動編號4無否商品類別序號Name文本20無否商品類別名稱Type文本20無否商品

25、類型商品信息表(Goods)信息見表4-3所示。表4-3商品信息表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述ShopID 主鍵自動編號4無否商品編號TypeID文本10無否類別序號UserID文本12無否用戶名Name文本20無否商品名稱Producer文本50無是生產(chǎn)商Package文本30無是包裝型號Price數(shù)字8無否進貨價格Saleprice數(shù)字8無否銷售價格折扣數(shù)字4無是折扣Content文本200無是商品說明PostTime日期/時間8無是上傳時間庫存數(shù)字4無否商品庫存數(shù)量ReadCount數(shù)字4無是商品被瀏覽次數(shù)BuyCount數(shù)字4無是商品被購買次數(shù)ImageFile文

26、本30無是商品圖片名稱和路徑GoodsCheck是/否1無否商品是否通過驗證計數(shù)器信息表(webcount)信息見表4-4所示。表4-4計數(shù)器信息表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述count_id 主鍵自動編號4無否計數(shù)編號count_ip文本15無否客戶IPcount_time日期/時間8Now()否訪問時間計數(shù)器信息表包含了計數(shù)編號(count_id)、客戶IP(count_ip)和瀏覽人訪問時間(count_time),其中計數(shù)編號(count_id)為關鍵字,數(shù)據(jù)類型為自動編號,如此在添加數(shù)據(jù)時會自動加上一個單獨的編號而不重復。瀏覽人訪問時間(count_time)的

27、默認值為 Now(),如此我們即能在添加數(shù)據(jù)時利用這個函數(shù)自動獲取瀏覽人進入網(wǎng)站的時間,并自動存入數(shù)據(jù)表當中。訂單信息表(Shop_list)信息見表4-5所示。表4-5訂單信息表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述OrderSn 主鍵自動編號4無否訂單號UserID文本12無否購買商品的用戶編號ShopName文本20無否購買商品的名稱 ShopID數(shù)字4無否商品編號Cost數(shù)字8無否商品單價Num數(shù)字4無否商品購買數(shù)量折扣數(shù)字4無否折扣TotalCost數(shù)字8無否購買商品總價OrderTime日期/時間8無否購買時間ShopCheck數(shù)字1無否訂單處理類型YIFUKUAN數(shù)字

28、8無否已付款金額ShopCheck=0,未處理訂單;=1,已處理訂單。公告信息表(Board)信息見表4-6所示。表4-6公告信息表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述ID 主鍵自動編號4無否公告編號Title文本20無否公告的標題Content文本200無否公告的內(nèi)容PostTime時間/日期8無否發(fā)布公告時間UserID文本12無否發(fā)布公告的用戶編號用戶投訴表(Complain)信息見表4-7所示。表4-7用戶投訴表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述ID 主鍵自動編號4無否投訴編號UserID文本12無否發(fā)布投訴的用戶編號ShopID數(shù)字4無否用戶投訴的商品編

29、號PostTime時間/日期8無否發(fā)布投訴的時間Content文本200無否投訴內(nèi)容Result文本200無否投訴所反映問題的解決方案Flag數(shù)字1無否投訴的解決狀態(tài)Flag=0,表示未解決用戶問題,F(xiàn)lag=1表示解決用戶問題。論壇基本信息表(bbsconfig)見表4-8所示表4-8論壇基本信息表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述ID 主鍵自動編號4無否用戶編號bbsname文本20無否論壇名稱moderated文本12無否論壇版主info文本50無否論壇介紹pass數(shù)字1無否論壇訪問權(quán)限hide數(shù)字1無是隱藏論壇lasttopic文本30無是最后發(fā)布主題lastname文

30、本12無否最后發(fā)帖人的名稱lasttime日期/時間8無否最后發(fā)帖人的時間論壇留言回復信息表(reforum)見表4-9所示表4-9論壇留言回復信息表字段名稱數(shù)據(jù)類型字段大小默認值是否允許為空字段描述ID 主鍵自動編號4無否留言編號topicid文本4無否主題序號userid文本12無否用戶名content文本200無否回復內(nèi)容posttime日期/時間8無否回復時間第五章 系統(tǒng)功能與模塊的設計實現(xiàn)當對數(shù)據(jù)表的設計完成后,即要對系統(tǒng)功能和模塊進行設計。在本次設計中,主要通過Dreamweaver,利用ASP中的Request(主要實現(xiàn)獲取表單中的數(shù)據(jù)),Response(主要實現(xiàn)輸出相關內(nèi)容)

31、,Server(主要實現(xiàn)文件相關路徑的設置以及建立Connection對象),Session(主要實現(xiàn)用戶信息的存儲以及購物車的實現(xiàn))幾大對象的屬性和方法,以及SQL語句,IFelse語句來編寫,完成系統(tǒng)功能和模塊的設計以及界面的設計。數(shù)據(jù)庫ACCESS和ASP通過ADO來實現(xiàn)鏈接,ADO使用內(nèi)置的RecordSets對象作為數(shù)據(jù)的主要接口。利用SQL語句完成數(shù)據(jù)的查詢,篩選,分組等功能。5.1 創(chuàng)建數(shù)據(jù)庫打開ACCESS,通過菜單中的新建,然后選擇新建空數(shù)據(jù)庫,設置好數(shù)據(jù)庫名。根據(jù)數(shù)據(jù)庫的邏輯結(jié)構(gòu)設計,選擇使用設計器創(chuàng)建表來創(chuàng)建各個模塊所需的數(shù)據(jù)表。5.2 在Dreamweaver中建立站點

32、打開Dreamweaver ,在菜單欄中選擇站點 管理站點 新建 站點 ,然后按屏幕提示操作,首先是給站點命名shop,然后按下一步,在服務器技術欄中選擇 Asp vbscript ,再按下一步,把文件存儲在計算機上的相應位置欄中,按下一步,在使用URL來瀏覽站點的根目錄欄中填寫“http:/localhost/”,單擊下方的“測試URL(T)”,出現(xiàn)彈出窗口中顯示“URL前綴測試已成功”,按下一步。建好站點后在Dreamweaver右下方的文件面板中將出現(xiàn)站點。5.3 系統(tǒng)模塊的設計與實現(xiàn) 系統(tǒng)的界面與導航條的設計電子商城系統(tǒng)給人的第一印象關鍵就在于界面,而可用性與易用性與導航條的設置有很大

33、關系。本系統(tǒng)的界面風格包含在top.asp文件中,版權(quán)信息等包含在bottom.asp文件中,登錄界面,搜索界面包含在left.asp中,商品分類,最新投訴,熱賣商品,關注商品包含在right.asp中。各模塊中的文件幾乎都調(diào)用了top.asp和bottom.asp來統(tǒng)一界面風格,使得整個網(wǎng)站界面更加簡潔、友好。top.asp如圖5.1所示,導航條界面。系統(tǒng)主頁面index.asp調(diào)用了top.asp,bottom.asp,left.asp,right.asp。圖5.1 top.asp導航條界面 數(shù)據(jù)庫的連接主數(shù)據(jù)庫,以及計數(shù)器采用以下代碼連接SetConn=Server.CreateObje

34、ct("ADODB.Connection")Conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Server.MapPath("User.mdb")Conn.open其中,Server.CreateObject的功能是建立Connection對象,Server.Mappath的功能是找到數(shù)據(jù)庫的路徑。 注冊和登錄模塊用戶在購物系統(tǒng)的主頁上,單擊“注冊”連接,如圖5.2,注冊信息保存在user/UserReg.asp。圖5.2 注冊用戶界面處理

35、注冊信息的文件為UserInsert.asp,實現(xiàn)流程如下。(1) 獲取注冊信息。獲取注冊信息主要利用Request對象的Form集合,獲取表單中的用戶名和密碼,以及性別,聯(lián)系電話,手機,主要實現(xiàn)代碼如下:username=trim(Request.form("username"),pwd=trim(Request.form("pwd") ,email=Request.form("email"),tel=Request.form("telephone")(2) 檢查注冊信息是否完整。主要通過Ifelse語句檢測表單

36、中的數(shù)據(jù)是否為空。例如:If username="" Then result=result&".<font color='#FF0000'>用戶姓名不能為空!</font><BR>",當用戶名為空時,提示出錯信息,以此類推,檢測密碼。檢測郵箱格式代碼為:n=Instr(email,”) 確認位置,沒有該符號,說明郵箱格式有誤。if n>0 then m=instr(n,email,.) 如果有,去判斷后是否有符號 .,不存在,則認為電子郵件域名錯誤。If m>=len(email)

37、then result=”email格式有誤” End if 。(3) 檢查是否存在該用戶名.利用SQL語句:Set rs = Conn.Execute("Select * from Users where UserId='" & uid & "'") If Not rs.Eof Then 假如指針沒有指向最后一個記錄集,已經(jīng)在表中的字段找到相同的ID,則彈出對話框“已經(jīng)存在此用戶名”<script language="javascript">alert("已經(jīng)存在此用戶名!&qu

38、ot;);history.go(-1);</script>(4) 添加新用戶,利用SQL語句:sql="insert into Users(UserID,PWD,UserName,Sex,Address,Email,Telephone,Mobile,Allow) values('"&_uid&"','"&pwd&"','"&username&"',"&Sex&",'"

39、;&address&"','"&email&"','"&_Request("telephone")&"','"&Request("mobile")&"',"&TypeUser&")" 用戶管理中心模塊用戶登錄后,網(wǎng)站主頁的左側(cè)顯示用戶管理中心界面,如圖5.3圖5.3 用戶管理中心界面其中功能有更改資料,更改密碼,客戶投訴,

40、我的投訴,管理界面,購物車,退出登錄。1.更改信息界面該界面和用戶注冊界面相似,只不過界面的每個部分設置了用戶信息。如圖5.4圖5.4更改用戶信息界面其中關鍵性代碼為:sql = "Select * From Users Where UserId='"&userID &"' and PWD='"&Session("Password")&"'"設置查詢語句,為了保證安全需要密碼和用戶名都一致才可以修改。處理修改用戶信息的文件為UserInsert.asp

41、,實現(xiàn)流程如下:(1) 獲取修改后的用戶信息。(2) 檢查用戶信息是否完整,如果不完整,返回錯誤提示信息。(3) 修改數(shù)據(jù)庫中用戶信息。其中用了SQL的更新語句,以及用到了Request對象和Session對象。sql="UpdateUsers Set UserName='"&Request("username")&"',Sex="&Sex&"," &_ "Address='"&Request("address&q

42、uot;)&"',Telephone='"&Request("telephone")&"',Mobile='"&Request("mobile")&_ "',Email='"&Request("email")&"',Allow=" &TypeUser&" Where UserId='"&uid

43、&"'" 用此時在表格中獲取的數(shù)據(jù)去更新Users表中的相應字段,條件是只更新指定的UserId。Session("UserName") = Request("username")Session("Address")=Request("address")Session("Email")=Request("email") 用此時表單中獲取的數(shù)據(jù),去替代服務器中session此時保存的數(shù)據(jù)。2.更改密碼界面單擊“更改密碼”鏈接,進入修改密碼界面

44、,如圖5.5圖5.5更改用戶密碼界面修改用戶密碼需要用戶輸入原來的密碼,并輸入兩次新密碼。電子商城系統(tǒng)驗證當前用戶名和當前密碼是否一致,代碼如下:sql = "Select * From Users Where UserId='"&Session("userid")&"' and PWD='"&Session("Password")&"' " 設置驗證用戶密碼和用戶名是否一致。 Set rs = Conn.Execute(sql)

45、執(zhí)行SQL語句。If rs.EOF Then 指針指向最后一個位置,仍未發(fā)現(xiàn)一致的字段,則不能修改。 Response.Write "你無權(quán)修改!"文件ResetPwd.asp完成密碼修改功能,實現(xiàn)流程如下。(1) 獲取密碼。UserId= request.queryString("userid") 獲取用戶名。oldpwd= trim(Request.form("oldpwd") 獲取表單中輸入的密碼。(2) 檢查輸入密碼newpwd=trim(Request.form("newpwd") 獲取新密碼。If ne

46、wpwd="" Then result=result&".<font color='#FF0000'>用戶密碼不能為空!</font><BR>" 新密碼不能為空。confirmpwd=trim(Request.form("confirmpwd") 獲取輸入的確認密碼。If confirmpwd<>newpwd Then result=result&".<font color='#FF0000'>兩次輸入的密碼不同!&l

47、t;/font><BR> 判斷確認密碼是否和輸入的新密碼相同。(3) 更新密碼Conn.Execute("Update users set PWD='"&newpwd&"' where UserId='"&UserId&"'") 更新表users中的密碼,條件是只更新獲取的用戶名。Session("userid") = UserId 把此時獲得的用戶名,去更新Session中保存的用戶名。Session("Password&

48、quot;) = newpwd 把此時獲得的密碼,去更新Session中保存的密碼。3.購物車界面購物車即用戶所選中,但尚未付款成交的商品。用戶所選的商品保存在shop_list表中,User字段為保存購買商品的用戶,check字段保存商品是否成交的信息。因此通過查詢該表中User字段為當前用戶,且字段Check0(0表示為未成交)的記錄,即可獲知用戶所買的商品。購物車界面如圖5.6:圖5.6購物車界面(1) 查詢用戶所選中的商品。這些商品保存在shop_list表中,并且ShopCheck字段的值為“0”。Sql="SELECT ID,User,ShopName,Cost,Num,

49、TotalCost,折扣,Time,ShopCheck,OrderNumber FROM shop_list WHERE ShopCheck=0 and user='" & Session("userid") & "'" 列舉需要顯示的字段,查詢用戶所選中的商品。set rs=Conn.Execute(Sql) 執(zhí)行SQL語句。(2) 判斷是否存在所選商品。如果查詢的結(jié)果為空,則該用戶沒有打算購買的商品。If rs.EOF Then 如果指針知道最后一個位置,仍然找不到符合要求的記錄,則提示購物車內(nèi)沒任何商品Re

50、sponse.Write "<CENTER> <P>購物車內(nèi)沒任何商品!</P>" & _"<P><A HREF='GoodsList.asp'>產(chǎn)品類型</A></P></CENTER>"(3) 顯示表格的標題。購物車界面以字段名稱為表格的標題。For I = 0 To rs.Fields.Count 1 列舉所有字段名稱,字段的序號和名稱保存在Fields字段中。If rs.Fields(I).Name<>"I

51、D" Then 為安全起見,不顯示ID字段 Response.Write "<TD>" & rs.Fields(I).Name & "</TD>"End IfNextResponse.Write "<TD>刪除</TD>"(4)顯示購物車內(nèi)商品信息的代碼如下:For I = 0 To rs.Fields.Count 1 列舉所有字段名稱,字段的序號和名稱保存在Fields字段中。If rs.Fields(I).Name="ShopCheck"

52、 Then 字段名為shopcheck時。If rs.Fields(I).Value=1 Then 當shopcheck=1,訂單已處理。Data = Data & "<TD>訂單已處理</TD>"ElseIf rs.Fields(I).Value=0 Then 當shopcheck=0時,訂單正處理。Data = Data & "<TD>訂單正處理</TD>"End IfElseIf rs.Fields(I).Name<>"ID" Then 為安全起見,不顯

53、示ID字段。Data = Data & "<TD>" & rs.Fields(I).Value & "</TD>"End IfNextResponse.Write DataResponse.Write "<TD><A HREF='Delete.asp?ID=" & rs("ID") & "'>刪除</A></TD></TR>" 鏈接delete.asp,傳遞

54、ID字段信息。Total = Total + rs("TotalCost")*0.8 總價打八折。開始用戶登錄購物車發(fā)送信息購物確認購物完成NY發(fā)送購買數(shù)量,總價格,及折扣等信息NN商品瀏覽購買商品在線支付YYNYY圖5.7瀏覽和購買商品模塊程序流程圖商品查詢界面商品的簡單查詢依據(jù)商品類別和名稱查詢所有符合條件的商品。并為用戶顯示查詢結(jié)果的詳細信息和簡略信息其界面如圖5.8圖5.8簡單查詢界面顯示的詳細信息和簡略信息分別如圖5.9和圖5.10圖5.9詳細信息界面圖5.10簡略信息界面簡單查詢界面設置在首頁上,方便了用戶的查詢。該界面主要包含商品類型和商品名稱。商品類別通過G

55、oodsType表獲取,實現(xiàn)代碼如下:sql = "Select * From GoodsType" 設置查詢商品類別信息的SQL語句。Set rs=Conn.Execute(Sql)If Not rs.Eof Then 判斷是否存在商品,存在則把商品加入下拉列表框。Do While Not rs.Eof <option value="<%=rs("Type")%>"><%=rs("name")%></option> 在下拉列表框中顯示商品類型選項。簡單查詢功能主要由

56、Search.asp實現(xiàn),實現(xiàn)流程如下。(1) 獲取查詢條件。(2) 生成查詢條件。typeid= Trim(Request("typeid") 獲取商品類型編號。If typeid="" Then 如果商品類型編號為空,顯示所有商品信息。 typeid="all" End IfIf typeid<>"all" Then 如果商品類型不為所有類型,則查詢指定商品序號。SearchSql = SearchSql&" and TypeId like '" & ty

57、peid&"%'" End Ifgname = Trim(Request("name") 獲取待查詢商品名稱。 If Not(isNull(gname) Or Len(gname)=0) Then 不為空,則在數(shù)據(jù)庫中查詢與輸入字段相同的商品名稱。SearchSql = SearchSql &" and Name Like '%" & gname & "%'" End If(3) 執(zhí)行查詢。(4) 顯示商品信息。Set rs= Conn.Execute(Sql

58、) 顯示頁中所有記錄。For i=1 to nPageSize 如果當前頁為最后一頁,該頁顯示的記錄數(shù)目可能小于規(guī)定的記錄數(shù)目,因此當當前記錄為最后一條記錄時要終止顯示。If rs.EOF Then Exit ForIf i=1 Then nCurseStart=rs.Fields("ID")nCurseEnd=rs.Fields("ID")<tr> <td><%=rs("Sn_Number")%></td> <td><a href="GoodsView.as

59、p?id=<%=rs("id")%>"><%=rs("name")%></a></td> <td><%=rs("SalePrice")%>元</td> </tr>信息統(tǒng)計電子商城系統(tǒng)提供了兩種信息統(tǒng)計方法,即銷售統(tǒng)計和瀏覽統(tǒng)計。通過這兩種方法,用戶可以方便地查看各種商品的銷售和瀏覽情況,指導自己的購買行為。銷售排行榜依據(jù)商品的購買次數(shù)進行降序排序,即購買次數(shù)多的商品排在前面,購買次數(shù)少的商品排在后面。商品保存在goods表中

60、,其中BuyConut字段保存商品的銷售數(shù)量,通過查詢該字段的值獲取銷售排行榜。實現(xiàn)代碼如下:sql = "Select ID,Name,BuyCount as ShopCount,Sn_Number From Goods order by BuyCount DESC" 從goods表中查詢商品排行,按購買次數(shù)的降序排列。set rs=Conn.Execute(sql) 執(zhí)行sql語句。If not rs.Bof Or rs.Eof Then 在指針沒有知道第一行或最后一行時,就找到了符合條件的記錄,則輸出商品信息:<tr> <td><ahref="./GoodsView.asp?id=<%=rs("id")%>"><%=rs("

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論