【正文】
en varchar 25 否 否 否 收貨人 sex varchar 2 否 否 否 性別 dizhi varchar 125 否 否 否 地址 youbian varchar 10 否 否 否 郵編 tel varchar 25 否 否 否 聯(lián)系電話 varchar 25 是 否 否 郵件 shfs varchar 25 是 否 否 送貨方式 zfff varchar 25 否 否 否 支付方式 time varchar 25 否 否 否 時間 xiadanren varchar 25 否 否 是 下單人 total int 11 否 否 否 總價 zt varchar 25 否 否 否 狀態(tài) 表 47 評價 表 列名 類型 長度 是否為空 是否主鍵 是否外鍵 說明 id int 4 否 是 否 編號,自增 userid int 4 是 否 是 會員編號 spid int 4 是 否 是 商品編號 title varchar 200 是 否 是 標(biāo)題 content text 是 否 是 內(nèi)容 time varchar 否 否 是 添加日期 數(shù)據(jù)庫表之間聯(lián)系 圖 44 數(shù)據(jù)庫表關(guān)系圖 第五章 詳細(xì)設(shè)計與實現(xiàn) 前臺模塊設(shè)計與實現(xiàn) ThinkPHP 框架 基于 MVC 設(shè)計模式。前臺模塊 控制器 類圖如圖 51 所示。由于 UserAction 類未定義 reg()方法,系統(tǒng)自動調(diào)用模板文件 ,顯示會員注冊界面。 會員點擊提交按鈕后, 系統(tǒng)會調(diào)用 UserAction 類的 chkuser()方法。然后系統(tǒng)將查詢結(jié)果注入到模板文件 中,并調(diào)用該模板文件顯示查詢結(jié)果。該方法接收超級鏈接傳來的參數(shù),通過 ShangpinModel 類根據(jù)參數(shù)從數(shù)據(jù)庫中查詢關(guān)于該商品的相關(guān)信息。該方法接收表單傳來的參數(shù),從 session中獲取會員名,然后通過 UserModel 模型類從數(shù)據(jù)庫中獲取會員編號,最后通過PingjiaModel 模型類將數(shù)據(jù)插入到數(shù)據(jù)庫中的 pingjia 表中。則系統(tǒng)調(diào)用 ProductAction 類的 addgouwuche()方法,接收鏈接傳來的商品編號。該方法從 session 中獲取商品的編號和購買數(shù)量,并用過 ShangpinModel 類從 shangpin 表中查詢商品的相關(guān)信息,并計算購物車內(nèi)總金額。系統(tǒng)調(diào)用 ProductAction 類 savedd()方法,通過 DingdanModel類將訂單信息插入到 dingdan 表中。 會員中心頁面如圖 510 所示。會員在該頁面可以查看到訂單狀態(tài)并進 行確認(rèn)收獲操作。 + _ _ c o n s t r u c t ( ) i s A j a x ( )+ d i s p l a y ( ) f e t c h ( ) b u i l d H t m l ( )+ a s s i g n ( ) n a m e v i e w e r r o rA c t i o n C l a s s+ l o o k d d ( )+ d e l e t e d d ( )+ o r d e r d d ( )+ s a v e o r d e r ( )+ f i n d d d ( ) ( )D i n g d a n A c t i o n C l a s s+ a d m i n g o n g g a o ( )+ a d d g o n g g a o ( )+ s a v e x i u g a i g o n g g a o ( )+ e d i t g o n g g a o ( )+ e d i t p i n g l u n ( )+ d e l e t e p i n g j i a ( )+ s a v e n e w g o n g g a o ( )+ d e l e t e g o n g g a o ( )G o n g g a o A c t i o n C l a s s+ i n d e x ( )I n d e x A c t i o n C l a s s+ a d d g o o d s ( )+ e d i t g o o d s ( )+ d e l e t e g o o d s ( )+ s a v e c h a n g e g o o d s ( )+ s a v e n e w g o o d s ( )+ c h a n g e g o o d s ( )P r o d u c t A c t i o n C l a s+ l o g i n ( )+ l o g o u t ( )+ c h k a d m i n ( )P u b l i c A c t i o n C l a s s+ a d d l e i b i e ( )+ s h o w l e i b i e ( )+ s a v e a d d l e i b i e ( )+ x i u g a i l e i b i e ( )+ s a v e x i u g a i l b ( )+ d e l e t e l b ( )T y p e A c t i o n C l a s s+ e d i t u s e r ( )+ l o o k u s e r i n f o ( )+ c h a n g a d m i n ( )+ s a v e a d m i n ( )+ d e l e t e u s e r ( )+ d o n g j i e u s e r ( )U s e r A c t i o n C l a s s 圖 513 后臺模塊控制器類圖 后臺模塊需要用到數(shù)據(jù)庫中所有的七張表,所以后臺模塊共設(shè)計七個模型類:DingdanModel 類、 GonggaoModel 類、 PingjiaModel、 ShangpinModel 類、 TypeModel 類、UserModel 類和 AdminModel 類。管理員輸入 類別名稱,選擇類別等級和父級名稱,完成操作。管理員可以修改類別的名稱和父級類別。添加商品界面如圖 517 所示。系統(tǒng)調(diào)用 ProductAction 類的 deletegoods()方法,根據(jù)接收的商品編號通過 ShangpinModel 類從 shangpin 表中刪除該商品信息。系統(tǒng)調(diào)用lookuserinfo()方法,該方法根據(jù)接收到的會員編號通過 UserModel 類從 user 表中取出該會員的詳細(xì)數(shù) 據(jù)。 管理訂單模塊設(shè)計與實現(xiàn) 管理員單擊 “ 查詢訂單 ” 標(biāo)簽后,系統(tǒng)調(diào)用 DingdanAction 類的 lookdd()方法,該方法通過 DingdanModel 類從 dingdan 表中取出所有訂單信息。 系統(tǒng)調(diào)用 DingdanAction 類的 orderdd()方法,該方法根據(jù)接收到的訂單編號通過 DingdanModel 類從 dingdan 表中取出該訂單的詳細(xì)信息。添加公告界面如圖 523 所示。 管理員登錄點擊 “ 評論管理 ” 標(biāo)簽后,系統(tǒng)調(diào)用 GonggaoAction 類的 editpinglun()方法,該方法數(shù)據(jù)庫中取出所有公告的信息。為了盡可能地發(fā)現(xiàn)并改正系統(tǒng)設(shè)計中的錯誤,減少錯誤造成的損失,保證系統(tǒng)開發(fā)的質(zhì)量,需要進行系統(tǒng)的測試。測試用例來源于對軟件的需求描述和需求規(guī)約的分析,并根據(jù)需求描述和需求規(guī)約所規(guī)定的功能和性能是否得到了充分的檢驗來判斷測試是否充分,這種方法被稱為 “ 黑盒法 ” 。不需測試軟件產(chǎn)品的內(nèi)部結(jié)構(gòu)和處理過程。 該網(wǎng) 站在PHP+MySQL+Apache 開發(fā)環(huán)境下,使用 Zend Studio 集成開發(fā)工具開發(fā)而成。 另外,本系統(tǒng)只實現(xiàn)到生成訂單, 并沒有實現(xiàn)在線支付功能。李老師每周都會抽出時間詢問我們的進度并耐心的解答我們遇到的問題。 謝 辭 本次設(shè)計的指導(dǎo)老師是李博老師。管理員登錄后可以對商品信息、會員信息、訂單信息和評論,還可以發(fā)布網(wǎng)站公告。 總 結(jié) 經(jīng)過這次畢業(yè)設(shè)計,我 熟悉了一個軟件系統(tǒng)開發(fā)的整個過程,進一步掌握四年多來在軟件方面學(xué)習(xí)的課程 。測試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性。白盒法主要用于單元測試。它是檢驗系統(tǒng)是否確實能提供系統(tǒng)方案說明書中指定功能的有效方法。 管理員在顯示公告頁面可以點擊每一個公告對應(yīng)的刪除復(fù)選框,刪除該公告。管理員在該頁面輸入公告的主題和內(nèi)容,添加公告。系統(tǒng)調(diào)用 deletedd(),該方法根據(jù)接收到的訂 單編號通過 DingdanModel 類從 dingdan 表中刪除訂單記錄。管理員在該頁面該頁面修改自己的信息。該方法同時也會通過 GonggaoModel 類刪除會員的所有評論信息。管理員確認(rèn)修改后,系統(tǒng)調(diào)用 savechangegoods ()方法,根據(jù)接收到的商品編號通過 ShangpinModel 類 在 type 表中更新該商品的信息。管理員在該頁面輸入商品具體信息,選擇商品類別,上傳商品圖片,完成添加商品操作。顯示類別頁面如圖 516 所示。二級分類的父類別名稱和編號可以從一級分類中選取。其它控制器類的作用與前臺模塊相似。該方法從session 中獲取登錄會員名,并通過 DingdanModel 模型類從 dingdan 表中查詢已登錄會員提交的所有訂單記錄。會員可以在該頁面內(nèi)修改自己的信息。 圖 58 購物車頁面 會員選購?fù)戤?,點擊 “ 選購?fù)戤?” 標(biāo)簽,進入填寫收獲人信息界面。然后系統(tǒng)會調(diào)用 ProductAction 類的 gouwu1()方法。若無會員登錄,則彈窗顯示消息。已登錄會員輸入評論主題和評論內(nèi)容后點擊提交按鈕,完成評論。 查詢結(jié)果頁面如圖 55 所示 。若點擊立刻查找按鈕,則系統(tǒng)調(diào)用 ProductAction 類的 findsp 方法。若會員名已注冊,則返回會員注冊頁面。 A d m i n M o d e l C l a s sG o n g g a o M o d e lP i n g j i a M o d e l C l a s sS h a n g p i n M o d e l C l a s s T y p e M o d e l C l a s sU s e r M o d e l+ _ _ c o n s t r u c t ( )+ a d d ( )+ s a v e ( )+ d e l e t e ( )+ s e l e c t ( ) d b n a m e d b n a m eM o d e l C l a s s 圖 52 后臺模塊模型類圖 注冊模塊設(shè)計與實現(xiàn) ThinkPHP 框架基于模塊和操作的方式進行訪問,網(wǎng)站的所有的模塊和操作都通過URL 的參數(shù)來訪問和執(zhí)行。其中 IndexAction 類是系統(tǒng)默認(rèn)的控制器類,而 PublicAction 類用于進行初始化等操作。會員與商品之 間的多對多的訂購關(guān)系轉(zhuǎn)換為訂單表。前臺面向會員,主要分為注冊模塊、登錄模塊、查詢模塊、訂購模塊和個人信息管理五個模塊。 用菱形表示實體型之間的聯(lián)系,在菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實體型連接起來,同時在無向邊旁標(biāo)上聯(lián)系的類型( 1:1,1:n 或 m:n)??陀^存在并且相互區(qū)別的實物稱為實體。用例和參與者之間的對應(yīng)關(guān)系稱為通信關(guān)聯(lián),它表示參與者使用了系統(tǒng)中的哪些用例。 用例分析 用例是參與者和計算機之間未達(dá)到某個目的的典型的交互過程。管理員在后臺 可以添加或者刪除商品的類別。 ( 5)個人信息修改。 管理員在 后臺管理員登錄頁面輸入正確 的管理員名 和密碼后進入后臺管理頁面。 在網(wǎng)站首頁單擊注冊標(biāo)簽或按鈕,進入注冊頁面。 需求分析 需求分析是指在新建或改變一個系統(tǒng)時描寫新系統(tǒng)的目的、范圍、定義和功能時所要做的所有的工作。 本網(wǎng)站采用 ThinkPHP 框架。該網(wǎng)站 投入使用后將方便 商家和 用戶的使用并且 可以 節(jié)約大量人力物力資源,所以 本網(wǎng)站的開發(fā)在 經(jīng)濟上是可行的。 ThinkPHP 具有很多實用的特性,如簡單易用的 MVC 模式、獨創(chuàng)的核心編譯和項目編譯機制、豐富的查詢語言支持、自動編碼轉(zhuǎn)換 等,這使其越來越受到 PHP開發(fā)人員的認(rèn)可。 Javascript 可以 提高了網(wǎng)頁的瀏覽速度和交互能力 并 使網(wǎng)頁增加互動性。 CSS 語法的目的是讓網(wǎng)頁內(nèi)容與視覺呈現(xiàn)分離。 Apache 的特點是簡單、速度快、性能穩(wěn)定,并可做代理服務(wù)器來使用。 PHP 具有速度快、支持面向?qū)ο?、實用性強?功能強大、成本低、開放性和可擴展性良好、版本更新速度快、模塊化和應(yīng)用范圍廣等特點。 第二章:開發(fā)工具和方法。全