版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 第一章 前 言</p><p> 隨著Internet的迅猛發(fā)展,電子商務(wù)已逐漸走向千家萬戶,它已經(jīng)開始影響人們的日常生活的各個(gè)方面,同時(shí)我們也開始意識(shí)到其中蘊(yùn)含的巨大商機(jī)及商業(yè)價(jià)值,并開始投身于電子商務(wù)活動(dòng)。電子商務(wù)可以通過IE瀏覽器,實(shí)現(xiàn)消費(fèi)者的網(wǎng)上購物,賣家及中介人之間的交易,它是在線網(wǎng)銀支付的一種新型商業(yè)運(yùn)營模式。電子商務(wù)是網(wǎng)絡(luò)技術(shù)應(yīng)用的全新發(fā)展方向。Internet本身所
2、具有的開放性、全球性、低成本、高效率的特點(diǎn),也成為電子商務(wù)的內(nèi)在特征,并使得電子商務(wù)大大超越了作為一種新的貿(mào)易形式所具有的價(jià)值。它不僅會(huì)改變企業(yè)本身的生產(chǎn)、經(jīng)營、管理活動(dòng),而且將影響到整個(gè)社會(huì)的經(jīng)濟(jì)運(yùn)行與結(jié)構(gòu)。電子商城的崛起對(duì)傳統(tǒng)的購物方式體系產(chǎn)生了強(qiáng)烈的沖擊,有效地縮短了貨物發(fā)行環(huán)節(jié),將廣大消費(fèi)者和營銷商緊密地結(jié)合在一起,大大提高了物質(zhì)流通率。</p><p> 淘寶網(wǎng)以及當(dāng)當(dāng)網(wǎng)已經(jīng)為我們做出了巨大的榜樣,它
3、也告訴我們,在網(wǎng)上開設(shè)商城是完全可行的,電子商城利用網(wǎng)絡(luò)這個(gè)平臺(tái)出售各式各樣的貨物,其中包括電子產(chǎn)品,食品,化妝品,服裝,寵物等,實(shí)現(xiàn)了坐在家里就可以輕松購物。顧客可以通過網(wǎng)站瀏覽到各式商品,使用網(wǎng)銀直接選購其所需要的商品,通過郵政部門以及各個(gè)快遞公司把貨物送到顧客家中。購物網(wǎng)站的優(yōu)點(diǎn)是購物的便捷和快速,提高了購物效率。顧客也可以給店主留言,寫下意見和感想。</p><p> 目前,中國網(wǎng)民已經(jīng)突破2億大關(guān),網(wǎng)
4、站數(shù)量已達(dá)到131萬個(gè),其中16.7%的網(wǎng)民經(jīng)常訪問購物網(wǎng)站,隨著國內(nèi)上網(wǎng)費(fèi)用的下調(diào)以及網(wǎng)速的大幅度提高,瀏覽購物網(wǎng)站的網(wǎng)民總數(shù)也會(huì)穩(wěn)步提升。由此可見在網(wǎng)上開商城已經(jīng)是大勢(shì)所趨的。</p><p> 通過以上數(shù)據(jù),我們可以欣喜的發(fā)現(xiàn)在網(wǎng)上開設(shè)商城的優(yōu)勢(shì):(1)投資少,見效快;(2)銷售時(shí)間不受限制;(3)銷售地點(diǎn)不受限制。</p><p> 本次畢業(yè)設(shè)計(jì)主要是使用HTML基本語言,AS
5、P、Vbscript腳本語言、DREAMWEAVER等設(shè)計(jì)網(wǎng)頁,使用數(shù)據(jù)庫知識(shí)(ACCESS)設(shè)計(jì)數(shù)據(jù)庫,使用SQL語句完成查詢,修改,刪除數(shù)據(jù)等功能,最后完成整個(gè)電子商城系統(tǒng)的調(diào)試。</p><p><b> 第二章 設(shè)計(jì)方案</b></p><p> 本次畢業(yè)設(shè)計(jì)使用的ASP(Active Server Pages),它既不是一種程序語言,也不是一種開發(fā)工具
6、,而是一種技術(shù)框架,不必使用微軟的產(chǎn)品就能編寫它的代碼,也可以產(chǎn)生和執(zhí)行動(dòng)態(tài)、交互式、高效率的服務(wù)器應(yīng)用程序。運(yùn)用ASP可將VBscript、javascript等腳本語言嵌入到HTML中,便可快速完成網(wǎng)站的應(yīng)用程序,無需編譯,可在服務(wù)器端直接執(zhí)行。ASP容易編寫,使用普通的文本編輯器編寫,如記事本就可以完成。由于腳本在服務(wù)器上而不是在客戶端運(yùn)行,ASP所使用的腳本語言都在服務(wù)器上運(yùn)行,用戶端的瀏覽器不需要提供任何別的支持,這樣大大提高
7、了用戶與服務(wù)器之間的交互的速度。此外,它可通過內(nèi)置的組件來實(shí)現(xiàn)更強(qiáng)大的功能,如使用ADO就可以輕松地訪問數(shù)據(jù)庫。</p><p> 此次電子商城系統(tǒng)采用B/S(瀏覽器/服務(wù)器)模式開發(fā),在此模式下,用戶主要通過客戶端瀏覽器瀏覽系統(tǒng)的工作界面,極少部分事務(wù)在瀏覽器端(Browser)實(shí)現(xiàn),主要事務(wù)在服務(wù)器端(Server)實(shí)現(xiàn)。這種模式通過IE通信,不受地域的限制。從而減輕了系統(tǒng)維護(hù)和升級(jí)的成本和工作量,降低了用
8、戶的總體成本。</p><p> 電子商城系統(tǒng)的特點(diǎn)是用戶在客戶端登陸系統(tǒng),然后瀏覽,管理或購買系統(tǒng)中的商品。該系統(tǒng)面向的用戶是不確定的。如果要求用戶下載安裝軟件才能瀏覽商品,會(huì)增加用戶瀏覽商品的難度,大大減少用戶數(shù)量。電子商城系統(tǒng)應(yīng)該支持跨平臺(tái)管理,其用戶不必下載安裝軟件。B/S模式支持跨平臺(tái)操作,只需安裝瀏覽器即可。因此電子商城系統(tǒng)利用這種模式實(shí)現(xiàn)。從而為不同用戶提供了統(tǒng)一的界面,使得界面易于維護(hù)。<
9、/p><p> 隨著Microsoft公司的不斷改進(jìn)和完善,ACCESS正逐漸成為目前最為方便的中小型數(shù)據(jù)庫管理系統(tǒng)。ACCESS支持的SQL指令非常齊全。同時(shí)ACCESS驅(qū)動(dòng)程序的執(zhí)行效率非常高。使用ACCESS數(shù)據(jù)庫開發(fā)系統(tǒng)易于開發(fā)者掌握并解決可能發(fā)生的問題。 </p><p> 基于以上原因在本次設(shè)計(jì)中使用ASP+ACCESS來實(shí)現(xiàn)本課題。</p><p>
10、 第三章 電子商城系統(tǒng)的設(shè)計(jì)與分析</p><p> 3.1 電子商城系統(tǒng)簡介</p><p> 該電子商城系統(tǒng)是基于WEB開發(fā)的,以構(gòu)建網(wǎng)上電腦產(chǎn)品購物網(wǎng)站為目標(biāo),由前臺(tái)購物、后臺(tái)管理兩大部分組成。</p><p> 電子商城系統(tǒng)主要實(shí)現(xiàn)用戶注冊(cè)、用戶登錄、分類瀏覽商品、查看商品介紹、購物車、在線購買、瀏覽新聞公告、商品的投訴以及商品管理、新聞公告管理、
11、投訴管理,會(huì)員管理等功能。</p><p> 根據(jù)這些功能要求,將整個(gè)系統(tǒng)分為兩大部分:一部分是用戶使用部分,包括用戶登錄、分類瀏覽,購買商品,在線支付等;另一部分是后臺(tái)管理部分,這部分功能必須通過管理員身份驗(yàn)證才能使用,包括商品管理、新聞管理、商品投訴管理和會(huì)員管理,客戶也可以通過論壇來提出意見和建議。電子商城系統(tǒng)就是要通過方便快捷的功能、簡潔明了的界面、完善的后臺(tái)管理來滿足服客戶的需要。</p>
12、<p> 3.2 軟件目標(biāo)設(shè)計(jì)</p><p> ?。?)系統(tǒng)的用戶登錄和身份驗(yàn)證;</p><p> 系統(tǒng)允許用戶注冊(cè),注冊(cè)的用戶需要身份驗(yàn)證才能發(fā)布商品;</p><p> 用戶進(jìn)入系統(tǒng)時(shí),需要進(jìn)行身份驗(yàn)證;</p><p> 只有特定權(quán)限的用戶才能進(jìn)入特定權(quán)限的界面。</p><p>
13、(2)在線銷售商品:</p><p> 無論是注冊(cè)用戶,還是未注冊(cè)用戶都允許瀏覽所有商品,并查看所有商品的詳細(xì)信息;</p><p> 無論是注冊(cè)用戶,還是未注冊(cè)用戶都允許按類別查找商品;</p><p> 允許注冊(cè)的用戶通過在線付款形式購買商品;</p><p> 系統(tǒng)為注冊(cè)用戶提供購物車,并允許用戶管理購物車。</p>
14、<p> ?。?)在線管理商品:</p><p> 只有管理員才可以在線管理商品,即管理商品時(shí)需要驗(yàn)證管理員身份;</p><p> 不同級(jí)別的管理員只能管理相應(yīng)的商品,如系統(tǒng)管理員可以管理系統(tǒng)中所有的商品,一般管理員只能管理自己上傳的商品。</p><p> (4)在線管理用戶:</p><p> 系統(tǒng)管理員可以添加,
15、驗(yàn)證和查詢用戶;</p><p> 系統(tǒng)管理員可以修改系統(tǒng)中的任何用戶信息;</p><p> 系統(tǒng)管理員可以刪除任何用戶。</p><p> ?。?)在線管理公告:</p><p> 系統(tǒng)管理員可以添加公告;</p><p> 系統(tǒng)管理員可以修改公告;</p><p> 系統(tǒng)管理員可
16、以刪除公告。</p><p> ?。?)在線管理投訴:</p><p> 任何購買了商品的用戶都可以發(fā)表對(duì)購買商品的投訴;</p><p> 只有管理員才可以刪除已經(jīng)回復(fù)的投訴;</p><p> 管理員可以處理投訴,也可以通過回復(fù)投訴問題來解決問題。</p><p><b> 3.3 設(shè)計(jì)原則&l
17、t;/b></p><p> 軟件系統(tǒng)開發(fā)設(shè)計(jì)原則一般包括以下四個(gè)方面: </p><p> ?。?)經(jīng)濟(jì),實(shí)用的原則;</p><p><b> ?。?)兼容性原則;</b></p><p> (3)可靠,有效性原則;</p><p><b> (4)安全性原則。</
18、b></p><p> 由于本電子商城系統(tǒng)只是一個(gè)畢業(yè)設(shè)計(jì)作品,要成為可行性系統(tǒng)還需要很多改進(jìn)。因此,在本系統(tǒng)的開發(fā)過程中,并沒有象上面提到的那樣嚴(yán)格地按照要求來進(jìn)行制作開發(fā),只是在對(duì)網(wǎng)上購物網(wǎng)站了解的基礎(chǔ)上,盡可能地使本系統(tǒng)所完成的工作符合實(shí)際。另外考慮到了系統(tǒng)的易操作性,因此在系統(tǒng)的界面設(shè)計(jì)過程中,盡可能地為用戶提供了一個(gè)友善、清晰簡潔的網(wǎng)絡(luò)界面。 </p><p><b
19、> 3.4 設(shè)計(jì)思路</b></p><p> 本課題為電子商城系統(tǒng)的軟件設(shè)計(jì),在圖書館關(guān)于該課題的信息比較多,所以在對(duì)它進(jìn)行總體設(shè)計(jì)的時(shí)候,首先對(duì)ASP的6大對(duì)象做了幾周的學(xué)習(xí),了解了其中各大對(duì)象的一些屬性和方法。又花了一些時(shí)間學(xué)習(xí)SQL語句,用ACCESS對(duì)后臺(tái)數(shù)據(jù)庫進(jìn)行了設(shè)計(jì)。在完成數(shù)據(jù)庫的設(shè)計(jì)后,開始對(duì)網(wǎng)站頁面進(jìn)行設(shè)計(jì)。對(duì)用戶權(quán)限以及網(wǎng)站的安全性進(jìn)行了考慮,使用DoChar()函數(shù)
20、屏蔽了一些特殊的字符,如一些非法用戶會(huì)在IE地址欄鍵入一些SQL語句非法連接數(shù)據(jù)庫,正是使用此函數(shù)把一些非法的字符替換成空格符輸出,以及在數(shù)據(jù)庫的設(shè)計(jì)中加入Check字段來檢測(cè)用戶是否為驗(yàn)證用戶,非驗(yàn)證用戶只能瀏覽網(wǎng)站的部分功能。最后,在基本功能實(shí)現(xiàn)以后,再對(duì)網(wǎng)站進(jìn)行反復(fù)地測(cè)試和修改,以期望達(dá)到最好的效果。</p><p><b> 需求分析</b></p><p>
21、; 該系統(tǒng)是基于B/S(瀏覽器/服務(wù)器)架構(gòu)的系統(tǒng),主要完成商品的瀏覽,購買,以及在后臺(tái)管理商品;新聞公告的添加、刪除、修改(更新),會(huì)員的在線購物與對(duì)商品的投訴,用戶在論壇上抒發(fā)自己的感想等。此系統(tǒng)分為前臺(tái)購物和后臺(tái)管理。前臺(tái)購物是友好的操作界面,供用戶注冊(cè)、瀏覽、訂購商品;后臺(tái)管理是提供給管理員的,其中包括:商品管理、用戶管理、公告管理,投訴管理等。使管理員從繁瑣的手工操作中解脫出來,并提高了工作效率。</p>&l
22、t;p> 按照系統(tǒng)功能的實(shí)現(xiàn),本系統(tǒng)可以劃分為以下幾個(gè)功能模塊:管理用戶模塊,管理商品模塊,管理商品類別模塊,管理商品投訴模塊,管理公告模塊等。管理用戶模塊包括了用戶注冊(cè)和驗(yàn)證,修改用戶信息,修改用戶密碼以及刪除用戶。管理商品模塊包括商品上傳,修改商品信息,刪除商品,增加商品圖片,以及修改和刪除商品的銷售記錄和瀏覽記錄。管理商品類別模塊包括添加,修改,刪除商品類別等功能。管理商品投訴模塊包括回復(fù)商品投訴,解決商品投訴問題和刪除商
23、品投訴,商品投訴需要保存商品的編號(hào),購買商品的訂單號(hào)及購買時(shí)間等信息。管理公告模塊包括添加,修改,刪除公告,公告包括公告的標(biāo)題,公告的內(nèi)容,以及發(fā)布時(shí)間等信息。由于電子商城的商品數(shù)量可能非常龐大,因此在商品瀏覽上,使用了分頁瀏覽導(dǎo)航。用戶可以通過點(diǎn)擊上一頁、下一頁、首頁、尾頁進(jìn)行分頁瀏覽。</p><p> 該系統(tǒng)對(duì)可靠性、易維護(hù)性、安全性、可操作性等性能有較高的要求。可靠性----要求系統(tǒng)在發(fā)生故障或輸入數(shù)據(jù)
24、不合理等情況下有較高的要求;易維護(hù)性---系統(tǒng)的變更(因系統(tǒng)需求變化和彌補(bǔ)系統(tǒng)缺陷而引起)要簡單易行;安全性---本系統(tǒng)所處理的數(shù)據(jù)都要具有實(shí)際意義,不能隨意存取和改動(dòng)。因此,必須對(duì)系統(tǒng)數(shù)據(jù)的存取和改動(dòng)進(jìn)行控制,對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行有效的保護(hù),以杜絕對(duì)數(shù)據(jù)的非法操作和防止計(jì)算機(jī)病毒的破壞;可操作性----本系統(tǒng)的操作人員是一般管理人員而非計(jì)算機(jī)專業(yè)人員,為使本系統(tǒng)有效地發(fā)揮作用,要求本系統(tǒng)容易理解,人機(jī)界面簡明、清晰、直觀,功能實(shí)用,操作簡單
25、方便,上機(jī)培訓(xùn)量小。此外,系統(tǒng)還需有較快的響應(yīng)速度,以盡量減少工作人員的等待時(shí)間。</p><p> 根據(jù)前臺(tái)用戶的需求,畫出以下E-R圖:</p><p> 實(shí)體類型 實(shí)體間聯(lián)系 屬性 </p><p> 圖3.1 ER圖的元素說明</p><p> 圖3.2 電子
26、商城系統(tǒng)ER圖</p><p> 將用戶與商品信息表通過訂購關(guān)系相聯(lián)系,可以將此m:n二元聯(lián)系轉(zhuǎn)換為關(guān)系模型。關(guān)系模型為:</p><p> 用戶(用戶編號(hào),密碼,用戶名,權(quán)限,地址);</p><p> 商品信息(商品編號(hào),類型編號(hào),商品名,價(jià)格,貨存)</p><p> 訂購(用戶編號(hào),商品編號(hào),數(shù)量,總金額)</p>
27、<p> 將用戶與商品信息表通過投訴關(guān)系相聯(lián)系,可以將此m:n二元聯(lián)系轉(zhuǎn)換為關(guān)系模型。關(guān)系模型為:</p><p> 用戶(用戶編號(hào),密碼,用戶名,權(quán)限,地址);</p><p> 商品信息(商品編號(hào),類型編號(hào),商品名,價(jià)格,貨存)</p><p> 投訴(用戶編號(hào),商品編號(hào),投訴內(nèi)容)</p><p> 圖3.3 公
28、告信息實(shí)體屬性圖</p><p> 圖3.4 投訴信息實(shí)體屬性圖</p><p> 通過以上的分析可知,該系統(tǒng)擁有用戶、商品類別、商品、訂單、投訴和公告的實(shí)體,其中實(shí)體對(duì)應(yīng)數(shù)據(jù)庫的表,屬性對(duì)應(yīng)表中的字段,關(guān)系對(duì)應(yīng)表之間的聯(lián)系。</p><p> 3.6 系統(tǒng)概要設(shè)計(jì)</p><p> 在軟件需求分析階段,搞清楚了軟件“做什么”的問題
29、。現(xiàn)在所要做的就是要把軟件“做什么”的邏輯模型變換為“怎么做”的物理模型,即著手實(shí)現(xiàn)軟件的需求。首先,需要描述的是系統(tǒng)的總的體系結(jié)構(gòu)。</p><p> 3.6.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì) </p><p> 系統(tǒng)的概要設(shè)計(jì)中最重要的就是系統(tǒng)的模塊化。模塊化是指解決一個(gè)復(fù)雜問題時(shí)自頂向下逐層把軟件系統(tǒng)劃分成若干個(gè)模塊的過程。每個(gè)模塊完成一個(gè)特定的功能。所有的模塊按某種方法組織起來,成為一個(gè)整體,
30、完成整個(gè)系統(tǒng)所要求的功能。 </p><p> 將系統(tǒng)劃分為多個(gè)模塊是為了降低軟件系統(tǒng)的復(fù)雜性,提高可讀性、可維護(hù)性,但模塊的劃分不能是任意的,應(yīng)盡量保持其獨(dú)立性。也就是說,每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少,而且接口簡單,即盡量做到高內(nèi)聚低耦合,提高模塊的獨(dú)立性,為設(shè)計(jì)高質(zhì)量的軟件結(jié)構(gòu)奠定基礎(chǔ)。在系統(tǒng)概要設(shè)計(jì)中采用結(jié)構(gòu)化設(shè)計(jì)(Structure Design,簡稱SD),SD以需求
31、分析階段產(chǎn)生的數(shù)據(jù)流圖DFD為基礎(chǔ),按照一定的步驟映射成軟件結(jié)構(gòu)。首先將整個(gè)系統(tǒng)劃分為幾個(gè)小問題、小模塊。在本系統(tǒng)中,設(shè)計(jì)了瀏覽公告模塊,瀏覽商品模塊,購買商品模塊,商品投訴模塊,用戶注冊(cè)模塊,公告管理模塊,商品管理模塊,訂單管理模塊,投訴管理模塊,用戶管理模塊,網(wǎng)站計(jì)數(shù)器模塊。</p><p> 3.6.2 功能模塊規(guī)劃及分析</p><p> 為了便于電子商城系統(tǒng)的設(shè)計(jì)開發(fā),根據(jù)系
32、統(tǒng)功能要求,使用了模塊化設(shè)計(jì),整個(gè)電子商城系統(tǒng)可以分為以下11個(gè)功能模塊:</p><p> ■瀏覽公告模塊:此模塊實(shí)現(xiàn)前臺(tái)的公告信息瀏覽,無權(quán)限限制,注冊(cè)用戶和非注冊(cè)用戶都可以瀏覽公告。</p><p> ■瀏覽商品模塊:此模塊實(shí)現(xiàn)前臺(tái)的商品及商品信息瀏覽,無權(quán)限限制,注冊(cè)用戶和非注冊(cè)用戶都可以瀏覽商品,并查看所有商品信息。</p><p> ■購買商品模塊
33、:此模塊專門提供給注冊(cè)用戶以及其以上級(jí)別的用戶使用,允許注冊(cè)的用戶通過在線付款形式購買商品,系統(tǒng)為注冊(cè)用戶提供購物車,并允許用戶管理購物車,系統(tǒng)為通過驗(yàn)證的用戶提供訂單管理功能,并允許這些用戶處理相應(yīng)的訂單。</p><p> ■商品投訴模塊:此模塊專門提供給注冊(cè)用戶以及其以上級(jí)別的用戶使用,允許購買此商品的用戶對(duì)商品進(jìn)行投訴,同時(shí)由管理員提出解決方案。</p><p> ■用戶注冊(cè)模
34、塊:此模塊包括會(huì)員的注冊(cè),相關(guān)資料的填寫,以及用戶的登陸,資料的修改。</p><p> ■公告管理:此模塊專門提供給管理員使用,系統(tǒng)管理員可以添加公告,</p><p> 系統(tǒng)管理員可以修改公告,系統(tǒng)管理員可以刪除公告。</p><p> ■商品管理模塊:此模塊中只有管理員才可以在線管理商品,即管理商品時(shí)需要驗(yàn)證管理員身份,不同級(jí)別的管理員只能管理相應(yīng)的商品
35、,如系統(tǒng)管理員可以管理系統(tǒng)中所有的商品,一般管理員只能管理自己上傳的商品。</p><p> ■訂單管理模塊:不同級(jí)別的管理員只能管理相應(yīng)的訂單,如系統(tǒng)管理員可以管理系統(tǒng)中所有商品的訂單,一般管理員只能管理自己上傳商品的訂單。</p><p> ■投訴管理模塊:任何購買了商品的用戶都可以發(fā)表對(duì)購買商品的投訴,只有管理員才可以刪除已經(jīng)回復(fù)的投訴,管理員可以處理投訴,也可以通過回復(fù)投訴來解
36、決問題。</p><p> ■用戶管理模塊:系統(tǒng)管理員可以添加,驗(yàn)證和查詢用戶,系統(tǒng)管理員可以修改系統(tǒng)中的任何用戶信息,系統(tǒng)管理員可以刪除任何用戶。</p><p> ■網(wǎng)站計(jì)數(shù)器模塊:此模塊是用來統(tǒng)計(jì)并顯示網(wǎng)站訪問總?cè)藬?shù)、本日訪問人數(shù)和在線人數(shù)。</p><p> 在各個(gè)模塊的設(shè)計(jì)中注重它們之間的相對(duì)獨(dú)立性,減少它們之間的耦合,減輕模塊化設(shè)計(jì)的難度。各模塊的
37、關(guān)系見圖3.5系統(tǒng)功能模塊圖所示。</p><p> 圖3.5 系統(tǒng)功能模塊圖</p><p> 第四章 系統(tǒng)數(shù)據(jù)庫的設(shè)計(jì)</p><p> 4.1 數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(jì)</p><p> 根據(jù)系統(tǒng)的需求分析和數(shù)據(jù)庫的需求分析,同時(shí)根據(jù)相關(guān)部分的數(shù)據(jù)流程圖,對(duì)系統(tǒng)數(shù)據(jù)庫進(jìn)行概念結(jié)構(gòu)設(shè)計(jì)。</p><p>
38、; 根據(jù)數(shù)據(jù)關(guān)系模型和數(shù)據(jù)庫關(guān)系模式的范式,我們創(chuàng)建了電子商城系統(tǒng)數(shù)據(jù)表,本系統(tǒng)共有9個(gè)數(shù)據(jù)表,分別是:用戶信息表(users),商品類型表(GoodType),商品信息表(Goods),計(jì)數(shù)器信息表(webcount),訂單信息表(Shop_list),公告信息表(Board),用戶投訴表(Complain),論壇基本信息表(bbsconfig),論壇留言回復(fù)信息表(reforum)。</p><p> 4
39、.1.1 建立數(shù)據(jù)庫的原則 </p><p> 在建立數(shù)據(jù)庫時(shí),由于表中儲(chǔ)存信息的不同,所以表中所需的字段也不一樣,在確定所需字段時(shí)有以下五個(gè)原則:</p><p> 1.描述不同主題的字段應(yīng)屬于不同的表,通過定義之間的關(guān)系,可以將多個(gè)表中的字段進(jìn)行數(shù)據(jù)組合,生成各種表單或報(bào)表;</p><p> 2.不要在表中儲(chǔ)存通過推導(dǎo)或計(jì)算得到的數(shù)據(jù);</p&g
40、t;<p> 3.收集所需的全部信息。應(yīng)全面檢查書面的表單和報(bào)表,確定所需的數(shù)據(jù)都已包含在所設(shè)計(jì)的表中或可以由這些表計(jì)算出來;</p><p> 4.以最小的邏輯單位儲(chǔ)存信息,應(yīng)盡量把信息分解成比較小的邏輯單位;</p><p> 5.對(duì)于主關(guān)鍵字段,ACCESS不允許其有重復(fù)值或NULL值。</p><p> 4.1.2 建立字段的原則&l
41、t;/p><p> 在實(shí)際選擇和確定數(shù)據(jù)類型時(shí),應(yīng)結(jié)合字段的自身情況并考慮以下四點(diǎn):</p><p> 1.該字段用于儲(chǔ)存什么類型的值;</p><p> 2.要對(duì)字段中的值執(zhí)行什么類型的運(yùn)算;</p><p> 3.是否要用字段進(jìn)行篩選或排序;</p><p> 4.是否用字段對(duì)記錄進(jìn)行分組。</p>
42、;<p> 4.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> 數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(jì)完畢后,可以將數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。</p><p> 在電子商城系統(tǒng)中,共有9個(gè)數(shù)據(jù)表,分別是:用戶信息表(users),商品類型表(GoodType),商品信息表(Goods),計(jì)數(shù)器信息表(webcount),訂單信息表(Sho
43、p_list),公告信息表(Board),用戶投訴表(Complain),論壇基本信息表(bbsconfig),論壇留言回復(fù)信息表(reforum)。</p><p> 用戶信息表(users)信息見表4-1所示。</p><p> 表4-1 用戶信息表</p><p> 創(chuàng)建該表時(shí),需要?jiǎng)?chuàng)建一個(gè)系統(tǒng)管理員admin。本系統(tǒng)系統(tǒng)管理員的Allow字段為“1”,
44、普通管理員為“2”,普通注冊(cè)用戶為“3”。</p><p> Usercheck=0,未驗(yàn)證用戶;=1,已驗(yàn)證用戶。</p><p> 商品類型表(GoodsType)信息見表4-2所示。</p><p> 表4-2 商品類型表</p><p> 商品信息表(Goods)信息見表4-3所示。</p><p>
45、 表4-3 商品信息表</p><p> 計(jì)數(shù)器信息表(webcount)信息見表4-4所示。</p><p> 表4-4 計(jì)數(shù)器信息表</p><p> 計(jì)數(shù)器信息表包含了計(jì)數(shù)編號(hào)(count_id)、客戶IP(count_ip)和瀏覽人訪問時(shí)間(count_time),其中計(jì)數(shù)編號(hào)(count_id)為關(guān)鍵字,數(shù)據(jù)類型為自動(dòng)編號(hào),如此在添加數(shù)據(jù)時(shí)會(huì)自動(dòng)加
46、上一個(gè)單獨(dú)的編號(hào)而不重復(fù)。瀏覽人訪問時(shí)間(count_time)的默認(rèn)值為 Now(),如此我們即能在添加數(shù)據(jù)時(shí)利用這個(gè)函數(shù)自動(dòng)獲取瀏覽人進(jìn)入網(wǎng)站的時(shí)間,并自動(dòng)存入數(shù)據(jù)表當(dāng)中。</p><p> 訂單信息表(Shop_list)信息見表4-5所示。</p><p> 表4-5 訂單信息表</p><p> ShopCheck=0,未處理訂單;=1,已處理訂單。
47、</p><p> 公告信息表(Board)信息見表4-6所示。</p><p> 表4-6 公告信息表</p><p> 用戶投訴表(Complain)信息見表4-7所示。</p><p> 表4-7 用戶投訴表</p><p> Flag=0,表示未解決用戶問題,F(xiàn)lag=1表示解決用戶問題。</p
48、><p> 論壇基本信息表(bbsconfig)見表4-8所示</p><p> 表4-8 論壇基本信息表</p><p> 論壇留言回復(fù)信息表(reforum)見表4-9所示</p><p> 表4-9 論壇留言回復(fù)信息表</p><p> 第五章 系統(tǒng)功能與模塊的設(shè)計(jì)實(shí)現(xiàn)</p><p&
49、gt; 當(dāng)對(duì)數(shù)據(jù)表的設(shè)計(jì)完成后,即要對(duì)系統(tǒng)功能和模塊進(jìn)行設(shè)計(jì)。在本次設(shè)計(jì)中,主要通過Dreamweaver,利用ASP中的Request(主要實(shí)現(xiàn)獲取表單中的數(shù)據(jù)),Response(主要實(shí)現(xiàn)輸出相關(guān)內(nèi)容),Server(主要實(shí)現(xiàn)文件相關(guān)路徑的設(shè)置以及建立Connection對(duì)象),Session(主要實(shí)現(xiàn)用戶信息的存儲(chǔ)以及購物車的實(shí)現(xiàn))幾大對(duì)象的屬性和方法,以及SQL語句,IF…else語句來編寫,完成系統(tǒng)功能和模塊的設(shè)計(jì)以及界面的
50、設(shè)計(jì)。數(shù)據(jù)庫ACCESS和ASP通過ADO來實(shí)現(xiàn)鏈接,ADO使用內(nèi)置的RecordSets對(duì)象作為數(shù)據(jù)的主要接口。利用SQL語句完成數(shù)據(jù)的查詢,篩選,分組等功能。</p><p><b> 5.1 創(chuàng)建數(shù)據(jù)庫</b></p><p> 打開ACCESS,通過菜單中的新建,然后選擇新建空數(shù)據(jù)庫,設(shè)置好數(shù)據(jù)庫名。根據(jù)數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計(jì),選擇使用設(shè)計(jì)器創(chuàng)建表來創(chuàng)建各個(gè)
51、模塊所需的數(shù)據(jù)表。</p><p> 5.2 在Dreamweaver中建立站點(diǎn)</p><p> 打開Dreamweaver ,在菜單欄中選擇[站點(diǎn)] →[管理站點(diǎn)] →[新建] →[站點(diǎn)] ,然后按屏幕提示操作,首先是給站點(diǎn)命名shop,然后按下一步,在服務(wù)器技術(shù)欄中選擇 Asp vbscript ,再按下一步,把文件存儲(chǔ)在計(jì)算機(jī)上的相應(yīng)位置欄中,按下一步,在使用URL來瀏覽站點(diǎn)的
52、根目錄欄中填寫“http://localhost/”,單擊下方的“測(cè)試URL(T)”,出現(xiàn)彈出窗口中顯示“URL前綴測(cè)試已成功”,按下一步。建好站點(diǎn)后在Dreamweaver右下方的文件面板中將出現(xiàn)站點(diǎn)。</p><p> 5.3 系統(tǒng)模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 5.3.1 系統(tǒng)的界面與導(dǎo)航條的設(shè)計(jì)</p><p> 電子商城系統(tǒng)給人的第一印象關(guān)鍵就
53、在于界面,而可用性與易用性與導(dǎo)航條的設(shè)置有很大關(guān)系。本系統(tǒng)的界面風(fēng)格包含在top.asp文件中,版權(quán)信息等包含在bottom.asp文件中,登錄界面,搜索界面包含在left.asp中,商品分類,最新投訴,熱賣商品,關(guān)注商品包含在right.asp中。各模塊中的文件幾乎都調(diào)用了top.asp和bottom.asp來統(tǒng)一界面風(fēng)格,使得整個(gè)網(wǎng)站界面更加簡潔、友好。top.asp如圖5.1所示,導(dǎo)航條界面。系統(tǒng)主頁面index.asp調(diào)用了to
54、p.asp, bottom.asp,left.asp,right.asp。</p><p> 圖5.1 top.asp導(dǎo)航條界面</p><p> 5.3.2 數(shù)據(jù)庫的連接</p><p> 主數(shù)據(jù)庫,以及計(jì)數(shù)器采用以下代碼連接</p><p> Set Conn=Server.CreateObject("ADODB.Con
55、nection")</p><p> Conn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("User.mdb")</p><p><b> Conn.open</b></p>
56、<p> 其中,Server.CreateObject的功能是建立Connection對(duì)象,Server.Mappath的功能是找到數(shù)據(jù)庫的路徑。</p><p> 5.3.3 注冊(cè)和登錄模塊</p><p> 用戶在購物系統(tǒng)的主頁上,單擊“注冊(cè)”連接,如圖5.2,注冊(cè)信息保存在user/UserReg.asp。</p><p> 圖5.2 注冊(cè)
57、用戶界面</p><p> 處理注冊(cè)信息的文件為UserInsert.asp,實(shí)現(xiàn)流程如下。</p><p> 獲取注冊(cè)信息。獲取注冊(cè)信息主要利用Request對(duì)象的Form集合,獲取表單中的用戶名和密碼,以及性別,聯(lián)系電話,手機(jī),主要實(shí)現(xiàn)代碼如下:</p><p> username=trim(Request.form("username"
58、;)),pwd=trim(Request.form("pwd")) ,email=Request.form("email"),tel=Request.form("telephone")</p><p> 檢查注冊(cè)信息是否完整。主要通過If…else語句檢測(cè)表單中的數(shù)據(jù)是否為空。例如:</p><p> If username=
59、"" Then result=result&".<font color='#FF0000'>用戶姓名不能為空!</font><BR>",當(dāng)用戶名為空時(shí),提示出錯(cuò)信息,以此類推,檢測(cè)密碼。檢測(cè)郵箱格式代碼為:n=Instr(email,”@”) 確認(rèn)@位置,沒有該符號(hào),說明郵箱格式有誤。if n>0 then m=instr(n,e
60、mail,.) 如果有@,去判斷@后是否有符號(hào) .,不存在,則認(rèn)為電子郵件域名錯(cuò)誤。If m>=len(email) then result=”email格式有誤” End if 。</p><p> 檢查是否存在該用戶名.利用SQL語句:</p><p> Set rs = Conn.Execute("Select * from Users where UserI
61、d='" & uid & "'")</p><p> If Not rs.Eof Then 假如指針沒有指向最后一個(gè)記錄集,已經(jīng)在表中的字段找到相同的ID,則彈出對(duì)話框“已經(jīng)存在此用戶名”</p><p> <script language="javascript"></p>&
62、lt;p> alert("已經(jīng)存在此用戶名!");</p><p> history.go(-1);</p><p><b> </script></b></p><p> 添加新用戶,利用SQL語句:</p><p> sql="insert into User
63、s(UserID,PWD,UserName,Sex,Address,Email,Telephone,Mobile,Allow) values('"&_uid&"','"&pwd&"','"&username&"',"&Sex&",'&quo
64、t;&address&"','"&email&"','"&_Request("telephone")&"','"&Request("mobile")&"',"&TypeUser&&qu
65、ot;)"</p><p> 5.3.4 用戶管理中心模塊</p><p> 用戶登錄后,網(wǎng)站主頁的左側(cè)顯示用戶管理中心界面,如圖5.3</p><p> 圖5.3 用戶管理中心界面</p><p> 其中功能有更改資料,更改密碼,客戶投訴,我的投訴,管理界面,購物車,退出登錄。</p><p>&l
66、t;b> 1.更改信息界面</b></p><p> 該界面和用戶注冊(cè)界面相似,只不過界面的每個(gè)部分設(shè)置了用戶信息。如圖5.4</p><p> 圖5.4 更改用戶信息界面</p><p><b> 其中關(guān)鍵性代碼為:</b></p><p> sql = "Select * Fro
67、m Users Where UserId='"&userID &"' and PWD='"&Session("Password")&"'" 設(shè)置查詢語句,為了保證安全需要密碼和用戶名都一致才可以修改。</p><p> 處理修改用戶信息的文件為UserInsert.asp,實(shí)現(xiàn)流
68、程如下:</p><p> 獲取修改后的用戶信息。</p><p> 檢查用戶信息是否完整,如果不完整,返回錯(cuò)誤提示信息。</p><p> 修改數(shù)據(jù)庫中用戶信息。</p><p> 其中用了SQL的更新語句,以及用到了Request對(duì)象和Session對(duì)象。</p><p> sql="Updat
69、e Users Set UserName='"&Request("username")&"',Sex="&Sex&"," &_</p><p> "Address='"&Request("address")&"
70、39;,Telephone='"&Request("telephone")&"',Mobile='"&Request("mobile")&_</p><p> "',Email='"&Request("email")&
71、;"',Allow=" &TypeUser&" Where UserId='"&uid &"'" 用此時(shí)在表格中獲取的數(shù)據(jù)去更新Users表中的相應(yīng)字段,條件是只更新指定的UserId。</p><p> Session("UserName") = Request("
72、username")</p><p> Session("Address")=Request("address")</p><p> Session("Email")=Request("email") 用此時(shí)表單中獲取的數(shù)據(jù),去替代服務(wù)器中session此時(shí)保存的數(shù)據(jù)。</p>&l
73、t;p><b> 2.更改密碼界面</b></p><p> 單擊“更改密碼”鏈接,進(jìn)入修改密碼界面,如圖5.5</p><p> 圖5.5 更改用戶密碼界面</p><p> 修改用戶密碼需要用戶輸入原來的密碼,并輸入兩次新密碼。電子商城系統(tǒng)驗(yàn)證當(dāng)前用戶名和當(dāng)前密碼是否一致,代碼如下:</p><p>
74、 sql = "Select * From Users Where UserId='"&Session("userid")&"' and PWD='"&Session("Password")&"' " 設(shè)置驗(yàn)證用戶密碼和用戶名是否一致。</p><p>
75、; Set rs = Conn.Execute(sql) 執(zhí)行SQL語句。</p><p> If rs.EOF Then 指針指向最后一個(gè)位置,仍未發(fā)現(xiàn)一致的字段,則不能修改。</p><p> Response.Write "你無權(quán)修改!"</p><p> 文件ResetPwd.asp完成密碼修改功能,實(shí)現(xiàn)流程如下。</p&g
76、t;<p><b> 獲取密碼。</b></p><p> UserId= request.queryString("userid") 獲取用戶名。</p><p> oldpwd= trim(Request.form("oldpwd")) 獲取表單中輸入的密碼。</p><p>&
77、lt;b> 檢查輸入密碼</b></p><p> newpwd=trim(Request.form("newpwd")) 獲取新密碼。</p><p> If newpwd="" Then result=result&".<font color='#FF0000'>用戶密碼不能
78、為空!</font><BR>" 新密碼不能為空。</p><p> confirmpwd=trim(Request.form("confirmpwd")) 獲取輸入的確認(rèn)密碼。</p><p> If confirmpwd<>newpwd Then result=result&".<font c
79、olor='#FF0000'>兩次輸入的密碼不同!</font><BR> 判斷確認(rèn)密碼是否和輸入的新密碼相同。</p><p><b> 更新密碼</b></p><p> Conn.Execute("Update users set PWD='"&newpwd&"
80、' where UserId='"&UserId&"'") 更新表users中的密碼,條件是只更新獲取的用戶名。</p><p> Session("userid") = UserId 把此時(shí)獲得的用戶名,去更新Session中保存的用戶名。</p><p> Session("Pas
81、sword") = newpwd 把此時(shí)獲得的密碼,去更新Session中保存的密碼。</p><p><b> 3.購物車界面</b></p><p> 購物車即用戶所選中,但尚未付款成交的商品。用戶所選的商品保存在shop_list表中,User字段為保存購買商品的用戶,check字段保存商品是否成交的信息。因此通過查詢?cè)摫碇蠻ser字段為當(dāng)前用戶,
82、且字段Check0(0表示為未成交)的記錄,即可獲知用戶所買的商品。購物車界面如圖5.6:</p><p> 圖5.6 購物車界面</p><p> 查詢用戶所選中的商品。這些商品保存在shop_list表中,并且ShopCheck字段的值為“0”。</p><p> Sql="SELECT ID,User,ShopName,Cost,Num,Tot
83、alCost,折扣,Time,ShopCheck,OrderNumber FROM shop_list WHERE ShopCheck=0 and user='" & Session("userid") & "'" 列舉需要顯示的字段,查詢用戶所選中的商品。</p><p> set rs=Conn.Execute(Sql)
84、 執(zhí)行SQL語句。</p><p> 判斷是否存在所選商品。如果查詢的結(jié)果為空,則該用戶沒有打算購買的商品。</p><p> If rs.EOF Then 如果指針知道最后一個(gè)位置,仍然找不到符合要求的記錄,則提示購物車內(nèi)沒任何商品</p><p> Response.Write "<CENTER> <P>購物車內(nèi)沒任何商
85、品!</P>" & _"<P><A HREF='GoodsList.asp'>產(chǎn)品類型</A></P></CENTER>"</p><p> 顯示表格的標(biāo)題。購物車界面以字段名稱為表格的標(biāo)題。</p><p> For I = 0 To rs.Fields.Co
86、unt – 1 列舉所有字段名稱,字段的序號(hào)和名稱保存在Fields字段中。</p><p> If rs.Fields(I).Name<>"ID" Then 為安全起見,不顯示ID字段</p><p> Response.Write "<TD>" & rs.Fields(I).Name & "&
87、lt;/TD>"</p><p><b> End If</b></p><p><b> Next</b></p><p> Response.Write "<TD>刪除</TD>"</p><p> ?。?)顯示購物車內(nèi)商品信息的
88、代碼如下:</p><p> For I = 0 To rs.Fields.Count – 1 列舉所有字段名稱,字段的序號(hào)和名稱保存在Fields字段中。</p><p> If rs.Fields(I).Name="ShopCheck" Then 字段名為shopcheck時(shí)。</p><p> If rs.Fields(I).Valu
89、e=1 Then 當(dāng)shopcheck=1,訂單已處理。</p><p> Data = Data & "<TD>訂單已處理</TD>"</p><p> ElseIf rs.Fields(I).Value=0 Then 當(dāng)shopcheck=0時(shí),訂單正處理。</p><p> Data = Data &
90、amp; "<TD>訂單正處理</TD>"</p><p><b> End If</b></p><p> ElseIf rs.Fields(I).Name<>"ID" Then 為安全起見,不顯示ID字段。</p><p> Data = Data &
91、 "<TD>" & rs.Fields(I).Value & "</TD>"</p><p><b> End If</b></p><p><b> Next</b></p><p> Response.Write Data</p
92、><p> Response.Write "<TD><A HREF='Delete.asp?ID=" & rs("ID") & "'>刪除</A></TD></TR>" 鏈接delete.asp,傳遞ID字段信息。</p><p> Tot
93、al = Total + rs("TotalCost")*0.8 總價(jià)打八折。</p><p> 圖5.7 瀏覽和購買商品模塊程序流程圖</p><p> 5.3.5 商品查詢界面</p><p> 商品的簡單查詢依據(jù)商品類別和名稱查詢所有符合條件的商品。并為用戶顯示查詢結(jié)果的詳細(xì)信息和簡略信息其界面如圖5.8</p>&l
94、t;p> 圖5.8 簡單查詢界面</p><p> 顯示的詳細(xì)信息和簡略信息分別如圖5.9和圖5.10</p><p> 圖5.9 詳細(xì)信息界面</p><p> 圖5.10 簡略信息界面</p><p> 簡單查詢界面設(shè)置在首頁上,方便了用戶的查詢。該界面主要包含商品類型和商品名稱。商品類別通過GoodsType表獲取,實(shí)現(xiàn)
95、代碼如下:</p><p> sql = "Select * From GoodsType" 設(shè)置查詢商品類別信息的SQL語句。</p><p> Set rs=Conn.Execute(Sql)</p><p> If Not rs.Eof Then 判斷是否存在商品,存在則把商品加入下拉列表框。</p><p&g
96、t; Do While Not rs.Eof </p><p> <option value="<%=rs("Type")%>"><%=rs("name")%></option> 在下拉列表框中顯示商品類型選項(xiàng) 。</p><p> 簡單查詢功能主要由Search.asp實(shí)現(xiàn)
97、,實(shí)現(xiàn)流程如下。</p><p><b> 獲取查詢條件。</b></p><p><b> 生成查詢條件。</b></p><p> typeid= Trim(Request("typeid")) 獲取商品類型編號(hào)。</p><p> If typeid="&
98、quot; Then 如果商品類型編號(hào)為空,顯示所有商品信息。</p><p> typeid="all"</p><p><b> End If</b></p><p> If typeid<>"all" Then 如果商品類型不為所有類型,則查詢指定商品序號(hào)。</p>
99、<p> SearchSql = SearchSql&" and TypeId like '" & typeid&"%'"</p><p><b> End If</b></p><p> gname = Trim(Request("name")) 獲
100、取待查詢商品名稱。</p><p> If Not(isNull(gname) Or Len(gname)=0) Then 不為空,則在數(shù)據(jù)庫中查詢與輸入字段相同的商品名稱。</p><p> SearchSql = SearchSql &" and Name Like '%" & gname & "%'"
101、;</p><p><b> End If</b></p><p><b> 執(zhí)行查詢。</b></p><p><b> 顯示商品信息。</b></p><p> Set rs= Conn.Execute(Sql) 顯示頁中所有記錄。</p><p
102、> For i=1 to nPageSize 如果當(dāng)前頁為最后一頁,該頁顯示的記錄數(shù)目可能小于規(guī)定的記錄數(shù)目,因此當(dāng)當(dāng)前記錄為最后一條記錄時(shí)要終止顯示。</p><p> If rs.EOF Then Exit For</p><p> If i=1 Then nCurseStart=rs.Fields("ID")</p><p>
103、 nCurseEnd=rs.Fields("ID")</p><p><b> <tr></b></p><p> <td><%=rs("Sn_Number")%></td></p><p> <td><a href="G
104、oodsView.asp?id=<%=rs("id")%>"><%=rs("name")%></a></td></p><p> <td><%=rs("SalePrice")%>元</td></p><p><b>
105、</tr></b></p><p> 5.3.6 信息統(tǒng)計(jì)</p><p> 電子商城系統(tǒng)提供了兩種信息統(tǒng)計(jì)方法,即銷售統(tǒng)計(jì)和瀏覽統(tǒng)計(jì)。通過這兩種方法,用戶可以方便地查看各種商品的銷售和瀏覽情況,指導(dǎo)自己的購買行為。</p><p> 銷售排行榜依據(jù)商品的購買次數(shù)進(jìn)行降序排序,即購買次數(shù)多的商品排在前面,購買次數(shù)少的商品排在后面。商品保
106、存在goods表中,其中BuyConut字段保存商品的銷售數(shù)量,通過查詢?cè)撟侄蔚闹但@取銷售排行榜。實(shí)現(xiàn)代碼如下:</p><p> sql = "Select ID,Name,BuyCount as ShopCount,Sn_Number From Goods order by BuyCount DESC" 從goods表中查詢商品排行,按購買次數(shù)的降序排列。</p><
107、p> set rs=Conn.Execute(sql) 執(zhí)行sql語句。</p><p> If not rs.Bof Or rs.Eof Then 在指針沒有知道第一行或最后一行時(shí),就找到了符合條件的記錄,則輸出商品信息:</p><p><b> <tr></b></p><p> <td><a
108、 href="../GoodsView.asp?id=<%=rs("id")%>"><%=rs("Sn_Number")%></a></td><td><%=rs("Name")%></td><td><%=rs("ShopCount"
109、)%></td></p><p><b> </tr></b></p><p> rs.movenext 循環(huán)輸出。</p><p><b> loop</b></p><p><b> End If</b></p><
110、p> 關(guān)注排行榜依據(jù)商品的瀏覽次數(shù)進(jìn)行降序排序,實(shí)現(xiàn)方法和銷售排行榜相同,只是查詢語句不同。關(guān)注排行榜的查詢SQL語句如下:</p><p> sql = "Select ID,Name,ReadCount as ShopCount,Sn_Number From Goods order by ReadCount DESC"</p><p> 5.3.7 瀏覽
111、和購買商品</p><p> 瀏覽商品即顯示商品的信息,以方便用戶購買商品。電子商城系統(tǒng)提供了購物車在線付款功能,用戶可以輕松實(shí)現(xiàn)在線購買商品。</p><p> 單擊商品的按鍵,顯示商品的詳細(xì)信息,包括用戶對(duì)商品的投訴,以及解決問題的方案,如圖5.11</p><p> 圖5.11 商品詳細(xì)信息界面</p><p> 實(shí)現(xiàn)瀏覽商品功
112、能的文件為GoodsView.asp,顯示商品界面的流程如下:</p><p> 獲取商品序號(hào)并連接數(shù)據(jù)庫。</p><p> ShopID = Request.QueryString("ShopID") 獲取商品序號(hào)。</p><p> 查詢?cè)撋唐肥欠翊嬖?,不存在,則結(jié)束。</p><p> sql = &quo
113、t;Select * From Goods Where goodscheck=true and ShopID="&Cint(ShopID) 從goods表中查詢貨物為以驗(yàn)證,ShopID為(1)中獲取的ShopID值。</p><p> Set rsGoods = conn.Execute(sql) 執(zhí)行SQL語句。</p><p> If rsGoods.Eof
114、 Then 指針知道最后一條記錄,仍找不到符合條件的商品,則顯示沒有此商品信息。</p><p> Response.Write "沒有此商品信息"</p><p> 更新商品的瀏覽次數(shù)。</p><p> sql = "Update Goods Set ReadCount=ReadCount+1 Where ShopID=&qu
115、ot;&Cint(ShopID) 更新goods表中的商品瀏覽量,瀏覽量加1,只對(duì)應(yīng)于獲取的商品序號(hào)。</p><p> conn.Execute(sql)</p><p><b> 顯示商品類型。</b></p><p> sql = "SELECT * FROM GoodsType WHERE Type='&
116、quot; & rsGoods("typeid")&"'"</p><p> set rs=Conn.Execute(sql)</p><p> If not rs.EOF Then</p><p> Response.Write(rs("Name"))</p>
117、<p> ?。?)顯示商品圖片。Goods表的ImgaeFile字段保存圖片的相對(duì)路徑和名稱,電子商城系統(tǒng)把上傳的商品圖片保存在images文件夾下。因此獲取Images字段的值,即可獲得商品圖片的路徑和名稱。</p><p> If not iname = “” Then 圖片名不為空,則顯示圖片信息。</p><p> <img src=”/images\<%
118、=rsGoods(“ImageFile”)%>” width=”90” border=0></p><p> ?。?)顯示商品其他信息。</p><p><b> <tr> </b></p><p> <td>商品名稱<%=rsGoods("Name")%></td&
119、gt;</p><p> </tr> 顯示記錄集中獲得的商品名稱,其他信息以此類推。</p><p> ?。?)顯示圖片的訂購鏈接。</p><p> <a href="Goods/CATALOG.asp?id=<%=rsGoods("id")%>"><img border=&qu
120、ot;0" src="images/order.gif"></a> 把獲取的ID值傳遞給鏈接的網(wǎng)頁中。</p><p> 單擊商品的按鈕,即可進(jìn)入購買商品界面,如圖5.12</p><p> 圖5.12 購買商品界面</p><p> 購買界面顯示用戶購買商品的信息,以及需要用戶輸入數(shù)量,因此需要獲取購買商品的信
121、息。</p><p> ?。?)獲取用戶ID,商品編號(hào)。</p><p> User=Session("userId") 獲取用戶ID。</p><p> goodsid=Request.QueryString("id") 獲取商品編號(hào)。</p><p> ?。?)查詢商品信息。</p>
122、<p> Sql= "SELECT ID,Name,Sn_Number,Producer,SalePrice,折扣,Content FROM Goods where goodscheck=true and ID="&Cint(goodsid)</p><p> (3)顯示表格標(biāo)題信息。</p><p> For I = 0 To rs.Fie
123、lds.Count - 1</p><p> Response.Write "<TD>" & rs.Fields(I).Name & "</TD>" 讀取數(shù)據(jù)表的字段名稱以作為表格的標(biāo)題。</p><p> Response.Write "<TD><FORM METHOD=
124、9;POST' TARGET= 'Bottom' ACTION='AddToCar.asp?shopname=" & _rs("Name") & "&shopId=" & rs("ID") & "&saleprice=" & rs("SalePrice
125、") & _"'><INPUT TYPE='TEXT' NAME='Quantity' SIZE='5'></TD>" 輸出表格內(nèi)容。</p><p> 在購買商品后,需要把用戶名,商品序號(hào),購買數(shù)量,商品價(jià)格,購買總價(jià),以及訂單號(hào)放入購物車。Addtocar.asp文件實(shí)現(xiàn)了放入購買車界
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子商城網(wǎng)站畢業(yè)論文
- 電子商城畢業(yè)設(shè)計(jì)論文
- 手機(jī)電子商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-畢業(yè)論文
- 畢業(yè)論文范文——電子商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文范文——電子商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于c#的在線電子商城畢業(yè)論文
- 畢業(yè)論文范文——基于ssh框架的電子商城
- 電子商城前臺(tái)管理——畢業(yè)設(shè)計(jì)論文
- 電子商城系統(tǒng)的設(shè)計(jì)
- 電子商務(wù)網(wǎng)站畢業(yè)論文-電子商城的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文——電子購物商城系統(tǒng)
- 電子商城-網(wǎng)上購物系統(tǒng)
- 電子購物商城系統(tǒng)畢業(yè)論文
- 網(wǎng)上電子商城畢業(yè)設(shè)計(jì)
- 畢業(yè)論文---b2c電子商城的設(shè)計(jì)與實(shí)現(xiàn)
- 基于javase技術(shù)的電子商城的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文
- 基于javase技術(shù)的電子商城的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文
- 電子商務(wù)網(wǎng)站畢業(yè)論文-電子商城的設(shè)計(jì)與實(shí)現(xiàn) (2)
- 網(wǎng)上商城本科畢業(yè)論文-基于web的電子商城的設(shè)計(jì)與實(shí)現(xiàn)
- 電子商城系統(tǒng)規(guī)劃設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論