大型電子商務網站商家后臺管理系統畢業論文.doc_第1頁
大型電子商務網站商家后臺管理系統畢業論文.doc_第2頁
大型電子商務網站商家后臺管理系統畢業論文.doc_第3頁
大型電子商務網站商家后臺管理系統畢業論文.doc_第4頁
大型電子商務網站商家后臺管理系統畢業論文.doc_第5頁
已閱讀5頁,還剩47頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

天津大學2007屆本科生畢業設計(論文)大型電子商務網站商家后臺管理系統畢業論文目錄第一章 緒論21.1 選題背景及意義21.2 國內外發展狀況31.3 課題研究方法和內容4第二章 開發技術背景62.1 概述62.2 系統分層架構62.3 系統開發平臺72.4 系統開發框架8第三章 系統分析103.1 系統的可行性分析103.2 系統的功能分析103.3 系統的環境分析113.4 系統的限制分析11第四章 系統設計124.1 系統設計原則124.2 系統的總體結構設計124.3 系統的詳細設計134.4 系統的數據庫設計17第五章 系統實施225.1 開發工具的選擇225.2 主要界面的設計與實現225.3 程序設計245.4 系統測試24結束語25參考文獻26第一章 緒論1.1 選題背景及意義隨著電子商務(淘寶,京東,美團 等)在我國的逐漸流行,越來越多的人開始接觸電子商務。電子商務是建立在英特網上的一種商業應用,因特網使得電子商務能夠以比較低廉的成本從事比較大經濟規模的商業活動,它是一種全新的社會經濟形態,與傳統商務相比,它具有更快的傳播速度和更大的影響力。電子商務的好處可以惠及整個社會,通過因特網可以安全、迅速、低成本地實現電子商務交易,比起支票或者現金支付,網上支付在因特網上更容易審計和監督,可以有效地防止欺詐和盜竊。由于這些優勢,電子商務受到了全球的關注。商家后臺管理系統是電子商務的核心之一,它指的是電子交易的參與者(客戶、商家、銀行)使用安全電子支付手段通過計算機網絡進行現金支付或資金轉帳,并且可以查看自己商品的相應信息.對于日訪問量在千萬級別以上的網站,一般的同步模式往往無法應對,最終的結果是服務器壓力過大,而導致整個網站無法訪問。因為架構一個高可用,課擴展的框架是非常的重要。采用第三方轉帳支付是目前主流的電子支付方式,如:支付寶,財富通等。此類第三方轉帳支付的模式基本上為:用戶和商家在同一個平臺上,用戶通過平臺在各個銀行的接口,將購買貨物的錢轉帳到商家在平臺的賬戶上,平臺程序在接收到銀行的通知后,將信息發送給商家,商家在收到平臺發送的確認信息后,按照用戶的地址發貨,用戶確認貨物后發送信息給平臺,平臺將用戶的付款轉入商家的賬戶。通過網上銀行直接轉賬是另外一種較為流行的方式。用戶可以通過自己所擁有的儲蓄卡、信用卡,申請開通網上支付,從而可以直接使用網絡銀行。基本的流程為:用戶通過商家提供的接口,將購買費用直接轉入商家對應的銀行的賬戶,商家確認收到付款后通知用戶購買成功。在電子商務網站中主要使用通過第三方支付或與銀行直連的方式進行支付行為。目前一些深耕區域市場的團購網站已經不斷的嘗試,在一、二線城市范圍內進行區域劃分,或者按區塊劃分,或者按商圈活躍程度劃分等。由于這類城市占地面積大,用戶的消費呈現塊狀經濟,每日一團的活動無法滿足整個城市用戶的需求。即使折扣率低,也會因交通不便、地理距離等原因流失用戶。隨著網絡團購企業數量的爆發式增長,競爭日益激烈,生存空間縮小。且團購網站建站門檻低,大多數網站存在規模小、管理經驗缺乏、沒有配套的保障服務 等問題。因此,消費者頻頻受困團購,所帶來的信任度不斷降低。據中國電子商務研究中心從中國消費者協會獲悉,針對網絡團購的投訴在今年初后迅速增加了三 成。行業競爭日益白熱化、環境日益惡化,團購市場亟需規范和治理。此時,對于一些無資金、資源優勢的團購網站將被收購或淘汰,最終會呈現3-4家團購龍頭企業與擁有資源背景的以“標配”存在的團購頻道共同發展局面。對于提供生活信息服務類的網絡團購企業對當地市場的深耕,通過不斷挖掘潛在優質商戶,形成良好的口碑,將逐漸形成團購用戶新勢力。此時,用戶通過了解團購網站來決定消費去處,真正成為領銜用戶消費的“風向標”。而對于新進入區域市場的用戶,通過享受團購網站其他區域的團購服務后,網站品牌得到了親睞。這時,團購網站對用戶新進入區域的各消費需求更是起到了指南針的作用。 隨著團購行業的發展勢頭逐漸平穩,中國電子商務研究中心預測:團購行業的洗牌階段將在2010年底前后到來;面對著如此眾多的團購網站,一些具有行業背景的團購網站,將從獨立走向依附。這一趨勢最為突出的便是電子商務網站推出的團購業務,如珂蘭鉆石網推出的“火拼團”,淘寶推出的“聚劃算”等;可以預見,其他兩類:分類信息網(如大眾點評網推出的“點評團”)、SNS社區以團購模式介入電子商務,未來都將成為聚合用戶、,滿足用戶需求的“標配”存在。1.2 國內外發展狀況2008年11月,美國第一家團購網站Groupon在美國上線,從此引發全球團購網市場井噴式發展,以星星之火可以燎原之勢蔓延至中國。始發于北京、上海、深圳等大城市的網絡團購,已成為一種時尚而前衛的消費方式。面對2.3億的移動互聯網用戶中,有80.2%的網民的年齡層在18歲至30歲,這一層面的用戶正與團購網站的用戶群體相重疊。隨著3G時代的到來,移動互聯網熱潮的到來,若與團購潮“碰撞”,將會引發產業的新一輪的“波峰”。用戶通過手機端實現團購,并配合SNS平臺交互式應用,以APP的身份駐扎平臺之上,充分利用其龐大的客戶資源,將營造省時、快速、精準、便捷的團購環境。國內知名網絡團購企業拉手網()率先推出了 “Groupon+Foursquare”(即“簽到+團購”)商業模式,即通過電信運營商的移動通信網絡,讓用戶與朋友分享地理位置信息以及頻繁在 Foursquare類平臺上簽到所獲得的積分獎勵、獎章和其他獎勵,增加用戶黏性。比如,如果用戶在一家餐廳就餐,然后使用自己的移動設備在這家餐廳簽 到,那么該用戶在Foursquare類平臺上的好友就會收到該用戶所處的位置信息。團購業景象一片繁華,資金的推動力量也是不可言喻的。在拉手網、美團、F團等團購網站紛紛受寵后,風投們更是不遺余力的挖掘有潛力的團購主。中國電 子商務研究中心從參加“2010中國網絡團購行業高層研討會暨中國誠信網絡團購聯盟啟動儀式”的多家風投了解到,團購團隊的管理團隊經營能力、組織協 調能力、線下優質商戶資源整合能力等方面是風頭關注的重點。團購業受融資事件已非常普遍,在行業前景誘人的機遇下,團購行業所頻頻遇到的問題,如如何取得消費者信任、在活動召集過程中報出的產品價格是否與商家的折扣價格相符等問題,要想獲得實質性的發展還需經歷一個磨合期。中國電子商務研究中心預測,在經過團購行業的優勝劣汰后,對于存活下來的團購企業,資本的推動力量將會有更大規模的提升。2010年前后,我國先后涌現出精品一購、F團、美團、24券、都來團等團購網。截至2010年6月底,國內Groupon模式的團購網站數量已經突破400家,年度交易金額將近10億。 2010年7月15日,中國互聯網絡信息中心(CNNIC)發布的第26次中國互聯網絡發展狀況統計報告顯示,截至2010年6月,中國網民規模達到4.2億,較2009年底增加3600萬人;互聯網普及率攀升至31.8%,較2009年底提高2.9個百分點。網民規模的繼續壯大以及互聯網的普及應用,均為網絡團購的迅速發展提供了潛力巨大的市場。國內目前最常用的四種動態網頁語言Perl(Practical Extraction and Report Language)、PHP(Hypertext Preprocessor)、ASP(Active Server Pages)、JSP(JavaServer Pages)。國外比較流行的框架有:不少國外的大型企業系統和商務系統都使用以上的MVC架構,能夠支持高度復雜的基于Web的大型應用。各大電子商務網站:淘寶,京東,亞馬遜,Groupon等均是采用PHP 開發,LAMP的架構,承載了大量的訪問量,給商家提供了一個強有力的后臺,業務取得了很大的成功。1.3 課題研究方法和內容1.3.1 課題研究的方法本課題的開發環境為Linux + Apache + Mysql + PHP, 開發工具為vim, 參照SSL協議和PKI 準則。本課題模擬一個大型電子商務網站商家后臺管理系統的實現,將采用以下方法進行:1.配置LINUX開發環境,包括vim,虛擬主機等。2.通過PHP函數操縱LINUX上安裝的OPENSSL擴展,實現一對自簽名的公鑰和私鑰。3.安裝PHP CURL擴展使用CURL進行后臺通知的發送。4.使用PHP結合MYSQL數據庫設計一個異步支付過程。5.使用LINUX的設置后臺任務運行異步處理腳本。6.使用PHP函數操縱第一步生成的密鑰對實現報文的簽名與驗簽。1.3.2 課題研究的內容研究目標:模擬一個大型電子商務網站的商家后臺管理系統。研究內容: 異步模式與中間件與消息隊列的技術使用。異步模式是大型網站架構中的一種很重要的設計方法。對于日訪問量在千萬級別以上的網站,一般的同步模式往往無法應對,最終的結果是服務器壓力過大,而導致整個網站無法訪問。通過對關鍵流程的異步設計,可以加快用戶請求相應的時間,從而提高單位時間內服務器處理請求的數目,使得網站支持更大的并發訪問量。電子商務需要解決通訊對象的身份認證,報文的完整性以及不可抵賴性等安全問題,數字簽名是目前電子商務中技術最成熟,應用最廣泛的一種電子簽名方法,它是確認電子商務中傳輸的電子訂單,合同真實可靠性的一種手段,數字簽名技術大多采用公鑰密碼技術實現。第二章 開發技術背景2.1 概述通過第一章得分析,決定采用php里面開源的cakephp的框架。Cakephp是基于mvc的架構的一個框架。為什么要用 MVC模式 呢? 因為它是一個經過考驗的真正的軟件設計模型,它可以使程序成為可維護的、模塊化的和快速開發的包。使用分離的模型(Model)、視圖(View)和控制 器(Controller)組織的程序是輕便的。新的特性很容易就被加入,舊的程序換上新的外觀也是一下子的功夫。模塊化和分離的設計使得開發者和設計者 能夠同時工作,這包括了快速原型的能力。分離的設計令開發者可以修改應用的一部分而不會影響到其他部分。2.2 系統分層架構本系統作為一個典型的web系統,當然無可置疑的選擇了MVC架構。大部分用過程語言比如ASP、PHP開發出來的Web應用,初始的開發模板就是混合層的數據編程。例如,直接向數據庫發送請求并用HTML顯示,開發速度往往比較快,但由于數據頁面的分離不是很直接,因而很難體現出業務模型的樣子或者模型的重用性。產品設計彈性力度很小,很難滿足用戶的變化性需求。MVC要求對應用分層,雖然要花費額外的工作,但產品的結構清晰,產品的應用通過模型可以得到更好地體現。MVC架構的系統使得多個視圖可以對應一個模型。對于擁有多種視圖的web應用來說,這幾乎是必不可少的。再次,由于一個應用被分離為多層,因此有時改變其中的一層就能滿足應用的改變。這點對于系統更新頻繁的文本應用來說,也是很重要的。最后,它還有利于軟件工程化管理。由于不同的層各司其職,每一層不同的應用具有某些相同的特征,有利于通過工程化、工具化產生管理程序代碼。所以,要想做出一個具有高拓展性,高質量的系統,是一定要選擇MVC架構的。雖然,MVC已經將系統劃分為三層架構,但是,為了進一步提高系統的拓展性,本系統決定將MVC的三層架構進一步細分,將MODEL劃分為業務邏輯層和持久化層。持久化層只負責與數據庫相關操作的處理,業務邏輯層只負責業務邏輯相關操作的處理。2.3 系統開發平臺開發一個在線系統是有很多技術可以選擇的,如JavaEE,PHP,ASP等。選擇lamp開發在線系統網站應為它具有一下優勢。1)成本低廉,擴展能力好誠然,在比較開源的LAMP平臺和商業化運作的,如J2EE或ASP.NET平臺時,成本肯定是首先要考 慮的因素,開源產品可免費下載使用,其本身的成本很廉價,此外,LAMP對硬件的要求也較低,而J2EE和ASP.NET對硬件的要求要高一些,在Web 托管領域,LAMP類型的托管服務通常比J2EE和ASP.NET類型的要廉價一些。有很多分析師認為LAMP雖然可以快速構建Web應用程序,但LAMP的擴展性并不好,要想取得良好的擴展能力付出的代價可能比當初構建Web 應用程序還要多,但根據我的經驗,LAMP的擴展性不佳不是因為平臺本身的原因,而是開發的原因,很多不具備擴展能力的代碼都是開發人員的“杰作”,為此 我還專門研究了大量的Java和ASP代碼,發現一樣存在這個問題,最后發現經驗不足的開發人員往往容易寫出不具有良好擴展能力的代碼,事實上,很多人根 本不是自己寫的代碼,而是從其它地方直接復制過來的。2)部署量大,安全性高LAMP因其部署量非常大,安全問題也更少,因為能發現的問題幾乎都被翻了過遍,它也是全世界范圍內測試最徹底的軟件組合。當然,我并不是說LAMP組合就沒有安全問題了,但大多數時候LAMP中暴露的安全問題都是因缺少經驗的開發人員未遵循最佳實踐編寫的代碼包含漏洞,或經驗不足的系統管理員未正確配置LAMP造成的。3)靈活,穩定LAMP也提供了非常好的靈活性,開發人員可以選擇自己喜歡的框架,甚至構建自己的框架,其它平臺通常包括它們自己的框架,可選擇的余地很小, 例如,.NET框架是ASP.NET開發的唯一選擇,J2EE是基于Java的框架,Rails則基于Ruby框架,使用PHP時,開發人員可以選擇 CakePHP,CodeIgniter,Zend Framework等框架。使用LAMP還有另一個好處,開發人員可以獲得全部的源代碼,因此可以自行修改LAMP中的軟件,以滿足特殊需要,例如,Apache Web服務器支持可裝載模塊,開發人員可以開發自己的模塊來處理特殊的任務,如通過可裝載模塊在Apache內實現身份認證,LAMP給開發人員提供了很 好的選擇靈活度。LAMP一向以穩定而著稱,新版本的向后兼容性通常也比較好,即便是升級到了新版本,開發人員也很少需要重寫代碼,LAMP的模塊化特性使得它可高度配置,在穩定性方面,與商業化的ASP.NET或J2EE解決方案相比,LAMP也是毫不遜色的。4)開發門檻低,系統成型快因LAMP均可免費獲得,使其變得非常流行,降低了開發人員進入LAMP的門檻,但ASP.NET和J2EE都有認證計劃,開發人員可以遵循最佳實踐開發,而要界定一名LAMP開發人員是否遵循最佳實踐則很難。前面我也提到ASP.NET和J2EE可選擇的框架很少,雖然我一度認為這是一個缺點,但對于大型開發團隊來說卻是一個優點,可選擇的余地很少 可以讓整個團隊成員保持一致的知識體系,在培訓和溝通方面都會節省很多時間,而LAMP陣營因可選的機會太多,團隊成員個體容易養成獨立的開發習慣和見 解,會給團隊協作帶來很大麻煩,因此我認為LAMP更適合一個人的開發團隊或小型團隊使用。使用LAMP可以快速搭建起系統的原型,成本也很低廉,這是LAMP的一大強項,對于初創公司而言,可以利用LAMP快速搭建一個系統原型,進而吸引投資人,盡快獲得投資。無論如何,LAMP仍然是非常流行的Web開發平臺,其低廉的成本和進入壁壘使得很多開發商都選擇了 它,LAMP安全、穩定和良好的擴展性也吸引了不少企業用戶,對于初創公司,LAMP可以幫助其快速搭建系統原型,進而拿到投資,LAMP的靈活性也成為 很多人選擇它的理由。因此,我們可以肯定地得出結論:LAMP仍然是Web開發最流行的選擇,在未來相當長一段時間里,它會和其它競爭技術共存。2.4 系統開發框架我們選擇的cakephp 這個開源的框架 CakePHP 是一個基于PHP,免費且開源的迅速發展Web框架。它提供程序員所需要的基本體系架構,因此程序員可以使用它更快速且不失靈活性地創建網絡應用程序。而這就是我們創造 CakePHP 的首要目的。CakePHP 擁有一個活躍的開發團隊以及社區,使 CakePHP 本身更具備應有的價值。另外,使用 CakePHP 也意味著您的應用程序將更容易地測試以及更容易地被改良、更新。CakePHP框架的優勢: 擁有既友好又活躍的社區 靈活的MIT 許可證 兼容 PHP4 和 PHP5 數據庫交互運用了 CRUD 應用程序腳手架 代碼自動產生(代碼產生器) MVC 體系架構 清晰,干凈的高度自定義的URLs和路由請求分發器 內建validation驗證 快速靈活的模板機制 (PHP syntax, with helpers) 擁有AJAX, JavaScript, HTML表單和更多的視圖助手工具 郵件、Cookie、安全、會話(Session),和請求處理的組件 靈活的ACL訪問控制機制 數據清理 靈活的視圖緩存Caching 本地化 可在任何子目錄里工作,很少甚至不需要更改任何 Apache 相關配置第三章 系統分析3.1 系統的可行性分析可行性分析是總體規劃的最后階段,下面主要從商家后臺管理信息系統開發的技術可行性、經濟可行性和管理可行性進行闡述。1. 技術可行性商家后臺管理信息系統可采用B/S結構來實現開發,前臺開發工具采用PHP腳本語言。PHP是一種用來制作動態網頁的服務器端腳本語言,是跨平臺的開放源代碼。一個嵌套的縮寫名稱,是英文超級文本預處理語言PHP:Hypertext Preprocessor的縮寫。PHP是一種簡單的,面向對象的,解釋型的,健壯的,安全的,性能非常之高的,獨立于架構的,可移植的,動態的腳本語言。后臺的數據庫開發工具選用Mysql,其體積小、速度快、總體擁有成本低、開放源碼,可以處理擁有上千萬條記錄的大型數據庫。這兩種開發工具強大,具有較好的接口,作為本系統開發工具是可行的。2. 經濟可行性隨著計算機技術的飛速發展,計算機在企業管理中應用的普及,利用計算機實現企業人事管理勢在必行。傳統的物業管理方式,對物業管理人員要求數量多、耗資高、錯誤率高,工作人員流動和對新人的培訓經費也是不小的開支。一套完整的小區物業管理信息系統可持續使用并能隨著時代和工作的需求不斷更新,一期投入終身受用,按長期的使用計算,開發系統的造價平均到每年與傳統式的管理方式的年耗資本相比較,性價比是可行的。開發這套系統的經濟可行性是很高的。3. 操作可行性對于這套商家后臺管理信息系統而言,在投入使用前,會由開發并能熟練操本系統的工程人員對用戶群進行專業系統的培訓。培訓內容應包括,熟練掌握系統的各個功能和簡單的系統維護,在開發設計系統的過程中直觀的界面和控件的文字解釋完全能使得用戶充分理解其功能和意義,在計算機普及的今天,用戶對本系統的操作完全可以看做是一種簡單的,配合形式的手工操作,因為本系統最適應于微型機,可以說幾乎任何人都可以使用和管理。所以本系統的操作是完全可行的。綜上各個方面,可得出該商家后臺管理信息系統的開發設計是可行的。3.2 系統的功能分析本系統以管理商家后臺的整個流程為目標。用戶必須登錄才能使用本系統的相關功能。用戶登陸后能夠查看自己的團購的信息,以及用戶在本次團購的購買數。每一筆用戶的消費記錄都會記錄在用戶的消費詳請里面,商家也會獲得用戶的數據,以及用戶對商家的評價。商家可以根據用戶對商家的評價做出相應的調整,以適應團購的需求,以及改善自己的服務質量。本系統整體上包括五個功能模塊:用戶登錄模塊、美團券驗證模塊、商家數據統計模塊、消費者資料管理模塊、消費者評價模塊。用戶管理模塊包括:用戶登錄注銷、用戶信息編輯、用戶導入、修改密碼四個子功能。美團券驗證模塊包括:美團券查看、美團券消費記錄、美團券消費統計三個子功能。商家數據統計模塊包括:商家當前消費數、商家信息發布二個子功能。消費者資料模塊包括:消費者信息查看、消費者聯系兩個子功能。消費者評價模塊包括:消費者星級查看、消費者建議查看、消費者進度查詢三個子功能。3.3 系統的環境分析客戶端:操作系統:Windows 或Linux均可瀏覽器:IE 7.0.5730.11及以上或與之兼容的瀏覽器服務器端:操作系統:Windows或Linux均可web服務器:Tomcat6.0.30及以上數據庫:MYSQL 5.0.22及以上3.4 系統的限制分析本系統顯示速度要求:每次更換頁面,應在5s內完成。第四章 系統設計4.1 系統設計原則 在系統分析的基礎上,運用結構化設計方法,來實現把用戶信息需求的系統邏輯方案轉換成可實施的基于計算機與通信系統得物理方案。系統的總體設計是一個由抽象到具體的過程,需要考慮到系統實現所需要的所有內外環境和主客觀條件。系統的設計,按照先進的管理思想,借助現代信息技術,以住戶為對象,進行開發。系統具體應包括如下特性:1.系統要具有可靠性,系統的抗干擾性及正常工作能力,如糾錯能力、保密性、抗病毒能力及故障排除后的系統恢復能力等。在本系統中要設置管理員的用戶名和密碼,是系統的使用更安全。而且在輸入信息時要對非法信息進行及時警告,以避免非法信息對數據庫的破壞。對數據庫要可以維護并定期的保存記錄。系統要具有高效性,系統運行應達到一定的效率,包括處理能力、處理速度和響應時間等指標。要能及時的更新各種記錄,對用戶的投訴要求特別要及時處理。另外對用戶要求打印收費清單的要求要及時處理。2.系統要具有可維護性。可維護性是指對系統進行改正、提高及適應環境變化的方便程度。它主要取決于系統的可讀性、可修改性和可擴充性。小區物業管理信息系統要有很好的修改和更新能力,以滿足不同的要求。3.系統還要具有友好性。友好性是指系統操作使用方便、靈活、簡單、易被用戶所接受和使用的能力。一個界面友好的小區物業管理信息系統能夠快速的讓小區管理員使用,并顯著提高其的工作效率。4.2 系統的總體結構設計本系統采用業界主流的B/S架構。這種架構下,用戶工作界面是通過web瀏覽器來實現,極少部分事務邏輯在前端(Browser)實現,主要事務邏輯在服務器端(Server)實現。B/S結構的優點就是可以在任何地方進行操作而不用安裝任何專門的軟件。只要有一臺能上網的電腦就能使用,客戶端零維護。系統的擴展性非常容易,只要能上網,再由系統管理員分配一個用戶名和密碼,就可以使用了。基于B/S架構的系統的部署相應的也就非常的簡單了。只要在服務器上部署好本系統后,用戶只需在瀏覽器地址欄輸入服務器的域名,就可以訪問本系統了。瀏覽器會自動調用DNS服務解析到部署了本系統所在服務器的IP,然后向該服務器發出請求。詳情見圖4-2。圖4-2 系統部署圖4.3 系統的詳細設計根據功能模塊劃分成控制器 (Controller),模型 (Model) 及視圖 (View) 是 CakePHP 的特色,除此之外它也包含了一些附加的類和對象,使得在 MVC 設計模式下開發更快更有樂趣。組件 (Component)、行為 (Behavior) 及助手 (Helper),提供了可擴展性及可重用性來快速新增功能到你的應用中。Ricardo 點擊了指向 /cakes/buy 的鏈接, 然后他的瀏覽器對你的服務器發出了一個請求。路由(route)從URL中解釋并提取出這次請求的參數: 控制器(controller), 動作(action)以及其他在這次請求中影響到業務邏輯的所有其他參數。使用路由后,請求的URL被映射到一個控制器的動作中(在特定的一個控制器的類的一個方法)。在這個例子,是CakeController類的buy()方法。在控制器的所有動作邏輯執行之前會調用beforeFilter()回調方法(callback)。控制器可能會使用模型來處理應用的數據。在這個例子里,控制器使用了一個模型從數據里得到Ricardo上次買的東西。在這次操作中所有這個模型 適用的回調方法、習慣(behavior)和數據源(DataSource)都可能得到實施。即使模型沒有被用到,所有的CakePHP控制器的初始化至 少都需要一個模型。當模型取得數據后,數據會被返回到控制器。模型的回調方法可能會被實施。控制器可能使用組件對數據進行進一步的加工,或者進行其他的操作(例如會話處理、驗證或者發電子郵件)。一旦控制器使用了模型和組件以有效地準備數據,就可以使用控制器的set()方法把數據傳送到視圖(view)。在數據送到視圖前,控制器的回調 方法可能會被實施。視圖邏輯會被執行,可能包括了各種元素及(或者)幫助方法。默認情況下,視圖會在一個布局(layout)里被渲染。附加的控制器回調方法(像afterFilter)可能被實施。最后,完整的經過渲染的視圖代碼就被送到Ricardo的瀏覽器了。4.3.1業務邏輯層(模型)Model層主要用于建立于數據庫的連接,建立持久的數據聯系.4.3.2控制層(控制器)paramsform) var_dump($this-paramsform); if ($this-User-save($this-paramsform) $this-flash(Your registration information was accepted., /users/register); else $this-flash(There was a problem with your registration, /users/register); function listusers() $arr = array(); $this-set(knownusers,$this-User-find(all, array(fields = array(id, username, password, email, name, doornum, phone, homenum, peoplenum, carnum),order = id DESC); function login() $this-layout = login; function login1() $res = $this-User-findByUsername($this-paramsformuser); if ($res & $resUserpassword = $this-paramsformpwd) $this-Session-write(user, $resUser); $this-redirect(array(action = listusers), null, true); else $this-flash(login failed,/users/login); function listone($id = null) $res = $this-User-findById($id); $this-set(user, $res); function postsearch()控制層主要包含了數據與頁面之間的交互處理,顯示層統和控制層得處理得到相應的數據來顯示。4.3.3視圖層(視圖層) 查看用戶 id 用戶名 視圖層主要用于頁面的展示。4.4 系統的數據庫設計4.4.1 編碼設計原則團購商家后臺系統實施的關鍵是系統集成,信息分類編碼的標注化是其最基本的工作,目的在于最大限度地消除信息的命名、描述和分類不一致造成的誤解、分歧和冗余,以及由此產生的數據不完整。對各類信息進行系統分析、確定編碼方案,進而實現準確、完整和低冗余的信息管理,統一協調各種信息采集和管理工作,使之既符合系統總體要求,又滿足各分系統的需要,減少對信息重復采集、加工和儲存。對商家后臺信息管理系統,要加強對標準化基礎管理、提高管理水平,建立和實現后臺管理信息系統。對各種物業信息要使代碼與之一一對應,保證系統集成信息的可靠性、可比性和適應性。在整個系統設計過程中采用以下的編碼方法:1為了既符合手工處理信息的習慣,又便于計算機處理,采用層次結構。2分類代碼應盡量采用十進制阿拉伯數字09表示,必要時采用字符代替。3各種分類代碼的長度及每位的含義應另編各類代碼規則說明。4為了區別各分系統的分類,可將代碼的第一位用于標示分系統。5為了便于識別分類對象,需要時允許在代碼中設置用字母表示的標識碼與數字組合編碼。6為了便于層間分開,必要時允許設置間隔符“”或預先定義每一層的位長。一般在手工處理是使用,在計算機處理存儲時可省略。7代碼一般采用登場結構。本系統的編碼將嚴格按照制定的編碼規則,在對變量命名中采取英文命名,對特殊的要進行注釋。對每個程序的輸入輸出都要進行注釋,以避免日后修改時出現麻煩。4.4.2 數據庫的詳細設計數據庫表總體設計如上節所述,為六個表。本節將詳細闡述一下數據庫關鍵表的設計情況。User 表主要記錄的是商家的基本信息,這些最基本的信息比如登錄的帳號,密碼,以及商家的名字等等。系統采用用戶名和密碼相結合的驗證方式,以用戶登陸后直接進入前臺操作界面(即用戶專用界面);當驗證登陸管理員頁面操作時,則進入后臺管理員專用頁面,會對顧客信息保密的機制。要實現該模塊功能,先要建立一個用戶注冊信息表,其包括以下字段:用戶帳號、密碼、確認密碼、姓名、性別、電話號碼、住址、郵編要實現功能,先建立PHP動態網頁,插入相應字段,在建立另外一個PHP動態頁面,接受前一個PHP頁面的信息,當用戶的信息輸入信息錯誤時,則返回第一個注冊頁面,重新填入信息,待正確填寫信息正確時,系統會自動彈出提示成功頁面。CREATE TABLE users ( id int(10) unsigned NOT NULL AUTO_INCREMENT, username varchar(40) NOT NULL DEFAULT COMMENT 用戶名, password varchar(40) NOT NULL, name varchar(40) NOT NULL DEFAULT COMMENT 業主姓名, sex tinyint(3) unsigned NOT NULL DEFAULT 0, wuye varchar(255) NOT NULL COMMENT 物業地址, work varchar(255) NOT NULL COMMENT 工作單位, phone varchar(16) NOT NULL COMMENT 電話, email varchar(40) NOT NULL, card varchar(32) NOT NULL COMMENT 銀行卡號, PRIMARY KEY (id) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=用戶Deal 表主要記錄的是每一天的團購的信息,Deal 表會和user表聯系起來,一個Deal對應一個唯一的User,這樣每個團購對應的商家就會有唯一的一個。Deal 表中記錄的最主要的每天要團購的信息,以及商家在本單中賣出的書目等等。CREATE TABLE deals ( id int(10) unsigned NOT NULL AUTO_INCREMENT, city int(10) unsigned NOT NULL DEFAULT 0 COMMENT 城市, title int(10) unsigned NOT NULL DEFAULT 0 COMMENT 本單標題, message tinyint(10) unsigned NOT NULL DEFAULT 0 COMMENT 發送用戶信息, addtime char(10) unsigned NOT NULL DEFAULT 0 COMMENT 添加時間, modtime varchar(40) NOT NULL DEFAULT COMMENT 修改時間, oprice tinyint(3) unsigned NOT NULL DEFAULT 原價, nprice varchar(255) NOT NULL COMMENT 現價, wuliu varchar(255) NOT NULL COMMENT 是否物流單, phone varchar(16) NOT NULL COMMENT 負責人電話, email varchar(40) NOT NULL, card varchar(32) NOT NULL COMMENT 銀行卡號, PRIMARY KEY (id) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=團購信息Customer 表記錄的是每一個用戶。即用戶在網站中購買過的,那么相應的就會有一條購買記錄在coupon之中,外鍵分別是User_id和Deal_id。User中記錄了用戶的一些基本信息比如用戶的登錄密碼和帳號等等,帳號和密碼均經過md5認證,所以管理用的后臺是查看不到用戶的帳號和密碼。用戶的相應信息會回饋給團購的商家,用來商家改善自己。對用戶有更好的反饋。表里面主要有用戶的年齡,購買記錄,收入,工作等,用于商家的統計之中。CREATE TABLE customers ( id int(10) unsigned NOT NULL AUTO_INCREMENT, username varchar(40) NOT NULL DEFAULT COMMENT 用戶名, password varchar(40) NOT NULL, name varchar(40) NOT NULL DEFAULT COMMENT 姓名, age tinyint(10) NOTNULL, sex tinyint(3) unsigned NOT NULL DEFAULT 0, place varchar(16) NOT NULL COMMENT 籍貫, wuye varchar(255) NOT NULL COMMENT 物業地址, work varchar(255) NOT NULL COMMENT 工作單位, phone varchar(16) NOT NULL COMMENT 電話, email varchar(40) NOT NULL, shen varchar(32) NOT NULL COMMENT 身份證, card varchar(32) NOT NULL COMMENT 銀行卡號, PRIMARY KEY (id) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=消費者Userinfo 表記錄的是商家的更為具體的信息,比如商家的具體的位置,在google map 上面的經度,緯度。以及消費的注意事項,還有商家的參與過的團購的次數等等。User 和 Userinfo 的表區別在于兩個表的信息不重疊,這樣讀取數據庫的時候值讀取的必要的信息,加快讀取速度。CREATE TABLE userinfos ( id int(10) unsigned NOT NULL AUTO_INCREMENT, user_id int(10) NOT NULL DEFAULT COMMENT 對應id, jingdu int(10) NOT NULL COMMENT 對應經度, weidu int(10) NOT NULL COMMENT 對應緯度, name varchar(40) NOT NULL DEFAULT COMMENT 業主姓名, sex tinyint(3) unsigned NOT NULL DEFAULT 0, doornum varchar(16) NOT NULL DEFAULT COMMENT 工商編號, place varchar(16) NOT NULL COMMENT 城市區, wuye varchar(255) NOT NULL COMMENT 物業地址, work varchar(255) NOT NULL COMMENT 工作單位, phone varchar(16) NOT NULL COMMENT 電話, PRIMARY KEY (id) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=用戶詳細信息Coupon 表記錄的是每一個美團券的密碼,每一個美團券的密碼都是10位隨機的數字,Coupon中的每一個用來記錄用戶對哪一家商家的消費,以為消費的狀態。商家后來驗證的時候就是驗證Coupon中的美團券密碼來查看該美團券是否已經消費過了。由于將會產生大量的Coupon 記錄,所以對Coupon的優化非常的重要,所以Coupon只記錄最主要

溫馨提示

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

評論

0/150

提交評論