網(wǎng)上訂餐課程設(shè)計說明書_第1頁
網(wǎng)上訂餐課程設(shè)計說明書_第2頁
網(wǎng)上訂餐課程設(shè)計說明書_第3頁
網(wǎng)上訂餐課程設(shè)計說明書_第4頁
網(wǎng)上訂餐課程設(shè)計說明書_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計說明書用紙- I -網(wǎng)上訂餐管理系統(tǒng)的設(shè)計與實現(xiàn)摘 要今年來,隨著人們生活壓力的持續(xù)增加,大部分人們都忙于工作,沒多余的時間去自己做飯,進(jìn)而促進(jìn)了網(wǎng)上訂餐行業(yè)的興起。網(wǎng)上訂餐為工薪階層提供了方便、快捷的就餐方式,只需動動鼠標(biāo)、鍵盤,可口的的飯菜就等送到嘴邊!對于餐飲行業(yè),有一個好的網(wǎng)上訂餐管理系統(tǒng),不僅能方便的管理餐飲,還能吸引不少顧客。由此可見,一個好的網(wǎng)上訂餐管理系統(tǒng)已經(jīng)成為一個餐飲公司發(fā)展好壞的一個決定性因素,在此類公司中占據(jù)著日趨重要的低位。通過分析網(wǎng)上訂餐管理的內(nèi)容及特點,提出了網(wǎng)上訂餐管理系統(tǒng)的解決方案。系統(tǒng)采用 ASP,SQLServer2005 作為主開發(fā)工具進(jìn)行開發(fā)。

2、系統(tǒng)由管理員登錄,注冊模塊,餐飲信息查詢模塊,會員信息管理模塊,訂單信息管理模塊,會員登錄模塊,會員基本信息、訂單、修改信息模塊和訂餐模塊等組成。文章以需求分析,概要設(shè)計,模塊詳細(xì)設(shè)計,系統(tǒng)運行和測試,系統(tǒng)說明等為主線,詳細(xì)介紹了網(wǎng)上訂餐管理系統(tǒng)。首先,根據(jù)網(wǎng)上訂餐管理的內(nèi)容及會員特點對系統(tǒng)作為需求分析,其次根據(jù)系統(tǒng)的實現(xiàn)功能和使用進(jìn)行規(guī)劃,最后完成了模塊的劃分和數(shù)據(jù)庫的設(shè)計與實現(xiàn),并對系統(tǒng)進(jìn)行了測試。關(guān)鍵詞:ASP,模塊,數(shù)據(jù)庫,網(wǎng)上訂餐管理課程設(shè)計說明書用紙- II -目目錄錄1 緒論.1 1.1 研究背景 .11.2 開發(fā)意義 .11.3 本文的組織結(jié)構(gòu) .12 系統(tǒng)需求分析.22.1

3、系統(tǒng)功能分析 .22.2 設(shè)計目標(biāo) .22.3 開發(fā)及運行環(huán)境 .23 系統(tǒng)概要設(shè)計.33.1 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計 .33.1.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計.33.1.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計.43.1.3 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計.43.2 系統(tǒng)功能設(shè)計 .73.2.1 數(shù)據(jù)庫功能設(shè)計.73.2.2 系統(tǒng)功能結(jié)構(gòu)設(shè)計 .103.3 數(shù)據(jù)庫的連接 .104 系統(tǒng)模塊詳細(xì)設(shè)計.114.1 登錄模塊 .114.2 會員注冊模塊 .124.3 會員密碼修改模塊 .134.4 會員找回密碼模塊 .144.5 系統(tǒng)主模塊 .154.6 新聞內(nèi)容顯示模塊 .184.7 用戶主頁模塊 .18課程設(shè)計說明書用紙- III -4

4、.8 管理員登陸模塊 .214.9 管理員注冊模塊 .224.10 管理員找回密碼模塊 .234.11 管理員修改密碼模塊 .244.12 管理員管理模塊 .254.12.1 餐飲管理模塊.254.12.2 添加餐飲模塊.264.12.3 新聞管理模塊.274.12.4 發(fā)布、編輯新聞模塊.284.12.5 會員管理模塊.294.12.6 訂單管理模塊.305 系統(tǒng)運行與測試.325.1 系統(tǒng)調(diào)試 .325.2 測試與運行 .335.2.1 測試的目的.335.2.2 測試的原則.335.2.3 測試的內(nèi)容.345.2.4 測試用例.355.3 測試結(jié)論 .366 系統(tǒng)的使用說明與安裝.376

5、.1 運行環(huán)境要求 .376.2 安裝設(shè)置 .376.3 源程序用戶名和密碼.37結(jié)論.38參考資料.39課程設(shè)計說明書用紙- 1 -1 緒論1.1 研究背景“民以食為天”,餐飲業(yè)系百業(yè)之首。我國餐飲業(yè)已形成了高中低檔多層次,東西南北菜系多樣化,中西餐相互補充的格局。目前,網(wǎng)絡(luò)熱潮正沖擊著我們生活的方方面面。具體到餐飲業(yè)網(wǎng)絡(luò)營銷,網(wǎng)上訂餐是一種主要的形式。本系統(tǒng)實現(xiàn)通過網(wǎng)上訂餐,由餐飲公司負(fù)責(zé)送貨上門業(yè)務(wù),促進(jìn)餐飲業(yè)的蓬勃發(fā)展。1.2 開發(fā)意義網(wǎng)上訂餐業(yè)務(wù)的興起,折射出餐飲業(yè)善抓機(jī)遇、搶占利潤第二落點的經(jīng)營理念,同時也顯示出消費者在日常所需中,運用網(wǎng)絡(luò)觀念的意識正逐漸增強(qiáng)。但比起如今火爆的網(wǎng)上

6、購物,網(wǎng)上訂酒店住宿等服務(wù),網(wǎng)上訂餐服務(wù)在一些餐飲業(yè)中仍未引起足夠的重視,對于消費者來說,許多人對這一新興業(yè)務(wù)尚缺乏了解。但因這種消費方式響應(yīng)了當(dāng)前社會的快捷、便利等趨勢,網(wǎng)上訂餐仍存在著廣闊的發(fā)展空間。網(wǎng)上訂餐的發(fā)展也將給餐飲業(yè)帶來勃勃生機(jī)。1.3 本文的組織結(jié)構(gòu) 第一章:緒論。本章主要介紹研究背景,開發(fā)意義。第二章:需求分析。本章主要介紹數(shù)據(jù)庫需求分析,系統(tǒng)功能分析等。第三章:系統(tǒng)概要設(shè)計。本章主要介紹系統(tǒng)概要設(shè)計,數(shù)據(jù)庫結(jié)構(gòu)設(shè)計,數(shù)據(jù)庫的連接。第四章:系統(tǒng)詳細(xì)設(shè)計。本章主要介紹用戶管理,對數(shù)據(jù)庫的增刪改查操作。第五章:系統(tǒng)運行與測試。本章主要介紹本系統(tǒng)的運行環(huán)境與測試。第六章:系統(tǒng)的使用

7、說明與安裝。課程設(shè)計說明書用紙- 2 -2 系統(tǒng)需求分析 系統(tǒng)的需求分析中根據(jù)網(wǎng)上訂餐管理的一般流程,分析了系統(tǒng)的具體功能,對系統(tǒng)作了總體的規(guī)劃,提出了系統(tǒng)的設(shè)計目標(biāo),介紹了系統(tǒng)的開發(fā)及運行的環(huán)境。2.1 系統(tǒng)功能分析經(jīng)過調(diào)查、分析,本系統(tǒng)具有以下功能:(1)提供會員登錄、注冊、修改密碼以及基本資料。(2)提供管理員登陸,注冊,修改密碼以及基本資料。 (3)提供對會員基本信息的查詢。(4)提供管理員對餐飲、會員、訂單、新聞、數(shù)據(jù)庫的管理。(5)提供會員對新聞、餐飲信息的瀏覽以及訂購餐飲的功能。2.2 設(shè)計目標(biāo)通過分析,主要實現(xiàn)如下目標(biāo):(1)編寫登錄模塊,設(shè)置登錄用戶的用戶名和密碼。(2)編寫

8、主模塊,設(shè)置通過菜單選項進(jìn)入系統(tǒng)不同的子模塊。(3)編寫對會員基本信息操作模塊。(4)編寫管理員登錄、注冊、修改密碼模塊。(5)編寫管理員對餐飲、會員、訂單、新聞、數(shù)據(jù)庫管理模塊。2.3 開發(fā)及運行環(huán)境1、硬件平臺:(1)CPU:P41.8GHz。(2)內(nèi)存:256MB 以上。2、軟件平臺:(1)操作系統(tǒng):Windows XP/ Windows 2000。(2)數(shù)據(jù)庫:SQL Server 2005(3)開發(fā)工具:ASP.NET課程設(shè)計說明書用紙- 3 -3 系統(tǒng)概要設(shè)計系統(tǒng)概要設(shè)計首先對數(shù)據(jù)庫的編碼進(jìn)行設(shè)計,方便數(shù)據(jù)信息的處理,其次是根據(jù)需求分析,對數(shù)據(jù)庫的結(jié)構(gòu)進(jìn)行設(shè)計,建立相關(guān)的數(shù)據(jù)表,最

9、后構(gòu)畫出系統(tǒng)功能的結(jié)構(gòu)圖。3.1 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計3.1.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計根據(jù)軟件工程所學(xué)知識和以上對本次課程設(shè)計系統(tǒng)的分析,最終畫出系統(tǒng)的實體關(guān)系圖 (E-R 圖)如圖 3.1 所示。課程設(shè)計說明書用紙- 4 -3.1.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計由 3.1.1 的實體關(guān)系圖可以得到系統(tǒng)的關(guān)系模式為:餐飲信息(餐飲 id,餐飲名,原料,簡介,圖片,價格,訂購數(shù),已發(fā)貨量)管理員信息(管理員 id,姓名,密碼,聯(lián)系方式)會員信息(會員 id,密碼,姓名,性別,地址,聯(lián)系方式)訂單信息(訂單 id,會員 id,所訂餐飲 id,訂購數(shù)量,訂購時間,用餐時間)新聞信息(新聞 id,標(biāo)題,內(nèi)容,發(fā)布人,

10、發(fā)布時間,點擊次數(shù))3.1.3 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計1、數(shù)據(jù)庫的設(shè)計CREATE DATABASE WSDC ON PRIMARY ( NAME = WSDC, FILENAME = D:網(wǎng)上訂餐管理系統(tǒng)(課程設(shè)計)UserApp_DataWSDC.mdf , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ) LOG ON ( NAME = WSDC_log, FILENAME = D:網(wǎng)上訂餐管理系統(tǒng)(課程設(shè)計)UserApp_DataWSDC_log.ldf , SIZE = 1024KB MAXSIZE = 2048GB

11、, FILEGROWTH = 10%)2、表的設(shè)計(1)CY(餐飲表) 餐飲 id(Cid)為主鍵,不允許空,餐飲名 Cname 不允許空,其余字段允許為空,Cdnum 設(shè)置觸發(fā)器,當(dāng)往訂單表中插入新數(shù)據(jù)時,自動更新餐飲表中的訂購數(shù)量 CdnumCY(餐飲表)如圖 3.2 所示。圖3.2 CY表的結(jié)構(gòu)課程設(shè)計說明書用紙- 5 -CREATE TABLE CY(Cid int IDENTITY(1,1) NOT NULL primary key,Cname char(20) NOT NULL,Cdnum int,Cfh int,Cyl char(100),Cprice float check(C

12、price0),Cima varchar(50),Cintroduce char(1000))(2)HY(會員信息表) 會員 id(Hid)為主鍵,不允許空,其余字段允許空,性別(Hsex)設(shè)置check 約束,只允許填寫“男” “女”HY(會員信息表)如圖 3.3圖3.3 HY的結(jié)構(gòu)CREATE TABLE HY(Hid char(10) NOT NULL primary key,Hname char(10),Hadd char(100),Hpwd char(10),Hphone char(15),Hsex nchar(10) check(Hsex in (男,女))(3)GLY(管理員信息

13、表) 管理員id(Gid)為主鍵,Gid和密碼Gpwd不允許空。GLY(管理員信息表)圖3.4圖3.4 GLY表的結(jié)構(gòu)課程設(shè)計說明書用紙- 6 -CREATE TABLE GLY(Gid char(10) NOT NULL PRIMARY KEY,Gname char(10),Gpwd nchar(10) NOT NULL,Gphone char(12)(4)DD(訂單信息表) 訂單號為主鍵且以1為單位自增,本表所有字段均不允許為空。DD(訂單信息表) 如圖3.5圖3.5 DD表的結(jié)構(gòu)CREATE TABLE DD(Did int IDENTITY(1,1) NOT NULL,Hid char

14、(10) NOT NULL,Cid int NOT NULL,Dnum int NOT NULL DEFAULT (1),Ddate datetime NOT NULL, Ydate datetime NOT NULL)(5)NEWS(新聞信息表) 新聞id(NewsId)為主鍵,不允許空,其余字段均允許空。NEWS(新聞信息表)圖3.6 圖3.6 NEWS表的結(jié)構(gòu)CREATE TABLE NEWS(NewsId int IDENTITY(1,1) NOT NULL,title char(100),課程設(shè)計說明書用紙- 7 -content text,NewsUser char(10),New

15、sDate datetime)3.2系統(tǒng)功能設(shè)計3.2.1 數(shù)據(jù)庫功能設(shè)計(1)視圖視圖是一個虛擬表,其內(nèi)容由詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數(shù)據(jù)。視圖通常用來集中、簡化和自定義每個用戶對數(shù)據(jù)庫的不同認(rèn)識。視圖可用作安全機(jī)制,方法是允許用戶通過視圖訪問數(shù)據(jù),而不授予用戶直接訪問視圖基礎(chǔ)表的權(quán)限。通過視圖可以檢索基表中的數(shù)據(jù),也可以通過視圖來修改基表中的數(shù)據(jù)。(1)餐飲信息視圖use WSDCgocreate view Cintroduceas select * from CY(2)餐飲顯示信息視圖Use WSDCCREATE view cyInformation as s

16、elect Cyl,Cid,Cname,Cprice,Cima,Cintroduce from CY(3)餐飲管理信息視圖use WSDCgocreate view CYmanageas select * from CY(4)新聞信息視圖use WSDCgocreate view newsInformationas select * from NEWS(2)存儲過程存儲過程存儲在數(shù)據(jù)庫內(nèi),可由應(yīng)用程序通過一個調(diào)用執(zhí)行,而且允許用戶聲明課程設(shè)計說明書用紙- 8 -變量、有條件執(zhí)行以及其他強(qiáng)大的編程功能。存儲過程可以使得數(shù)據(jù)庫的管理、顯示關(guān)于數(shù)據(jù)庫及其用戶信息的工作容易得多。存儲過程包含程序流、邏

17、輯以及對數(shù)據(jù)庫的查詢。它們可以接受參數(shù)、輸出參數(shù)、返回單個或多個結(jié)果集以及返回值。存儲過程具有以下優(yōu)點:1、可以在單個存儲過程中執(zhí)行一系列 SQL 語句,2、可以從自己的存儲過程內(nèi)引用其他存儲過程,3、存儲過程在創(chuàng)建時即在服務(wù)器上進(jìn)行編譯,所以執(zhí)行起來比單個 SQL 語句快,且能減少網(wǎng)絡(luò)通信的負(fù)擔(dān)。USE WSDCGOcreate proc sa a char(10)asselect * from cyinformation where cname=a(3)本系統(tǒng)所創(chuàng)建的觸發(fā)器觸發(fā)器在 INSERT、UPDATE 或 DELETE 語句對表或視圖進(jìn)行修改時會被自動執(zhí)行。觸發(fā)器可以查詢其他表,并

18、可以包含復(fù)雜的 T-SQL 語句。一個表可以有多個觸發(fā)器。觸發(fā)器可通過數(shù)據(jù)庫中的相關(guān)表實現(xiàn)級聯(lián)更改,但是,通過級聯(lián)引用完整性約束可以更有效地執(zhí)行這些更改;也可以強(qiáng)制比用 CHECK 約束定義的約束更為復(fù)雜的約束;也可以評估數(shù)據(jù)修改前后的表狀態(tài),并根據(jù)其差異采取對策。一個表中多個同類觸發(fā)器允許采取多個不同的對策,以響應(yīng)同一個修改語句;觸發(fā)器也可確保數(shù)據(jù)規(guī)范化。使用觸發(fā)器可以維護(hù)非正規(guī)化數(shù)據(jù)庫環(huán)境中的記錄級數(shù)據(jù)的完整性。(1)餐飲表觸發(fā)器此觸發(fā)器實現(xiàn)當(dāng)從餐飲表中刪除一項餐飲信息后,自動刪除訂單表中與此餐飲相關(guān)的所有信息USE WSDCcreate trigger DD_updateon CY af

19、ter deleteasbegindeclare cid intif exists (select cid from deleted)select cid=(select cid from deleted)delete from DD where cid=cid end(2)訂單表觸發(fā)器此觸發(fā)器實現(xiàn)當(dāng)有新訂單生成時,自動更新餐飲表中餐飲訂購數(shù)量。課程設(shè)計說明書用紙- 9 -USE WSDCcreate trigger CY_updateon DD after insertasbegindeclare Cid int,Dnum intif exists (select cid from inse

20、rted)select Cid=(select cid from inserted)select Dnum=(select Dnum from inserted)update CY set Cdnum=Cdnum+Dnum where Cid=Cidend(4)本系統(tǒng)所使用的索引索引和書的目錄類似,它提供了指向表中行的指針,是到達(dá)數(shù)據(jù)的直接路徑。索引是為了加速檢索而創(chuàng)建的一種存儲結(jié)構(gòu)。索引是針對一個表而建立的。它是由除存放表的數(shù)據(jù)頁面以外的索引頁面組成的。每個索引頁面中的行都包含邏輯指針,通過該指針可以直接檢索到數(shù)據(jù),這就會加速物理數(shù)據(jù)的檢索。索引有下述優(yōu)點:1、提高了查詢的速度,2、提高連接

21、,3、查詢優(yōu)化器依靠索引起作用,4、強(qiáng)制實施行的唯一性。(1)餐飲索引CREATE NONCLUSTERED INDEX Cy_ind ON CY (Cid ASC)(2)會員索引CREATE NONCLUSTERED INDEX HY_ind ON HY (Hid ASC)(3)新聞索引CREATE NONCLUSTERED INDEX news_ind ON NEWS ( NewsId ASC,title ASC)(4)訂單索引CREATE NONCLUSTERED INDEX DD_ind ON DD (Did ASC,Hid ASC)(5)本系統(tǒng)所使用的函數(shù)用戶在編程時常常需要將一個多

22、多個T-SQL語句組成子程序,以便反復(fù)調(diào)用。課程設(shè)計說明書用紙- 10 -SQL Server 2005允許用戶根據(jù)需要自己定義函數(shù)。根據(jù)定義函數(shù)返回值類型,可將函數(shù)分為兩個類別:標(biāo)量函數(shù)和表值函數(shù)。標(biāo)量函數(shù)返回值是標(biāo)量值。表值函數(shù)返回值為整個表。按餐飲價格范圍查找餐飲信息函數(shù)代碼如下:USE WSDCcreate function searchbyprice(p1 float,p2 float)returns tableasreturn( select * from CY where Cprice between p1 and p2 )3.2.2 系統(tǒng)功能結(jié)構(gòu)設(shè)計根據(jù)需求分析和數(shù)據(jù)庫的設(shè)計,

23、構(gòu)畫出網(wǎng)上訂餐系統(tǒng)功能結(jié)構(gòu)圖,如圖 3.7 所示。網(wǎng)上訂餐管理系統(tǒng)管理員登陸登陸成功餐飲增刪改會員刪除新聞增刪改訂單刪除會員登陸登陸成功訂購餐飲管理訂單修改個人信息注冊修改密碼注冊修改密碼圖3.7 系統(tǒng)功能結(jié)構(gòu)圖3.3 數(shù)據(jù)庫的連接本設(shè)計是通過 ADO.NET 和數(shù)據(jù)庫建立連接并訪問數(shù)據(jù)庫的,代碼如下:(connectionStrings)(add name=conn connectionString=Data Source=.;Initial Catalog=WSDC;Integrated Security=SSPI;/)(/connectionStrings)課程設(shè)計說明書用紙- 11 -

24、4 系統(tǒng)詳細(xì)設(shè)計 本章主要介紹本系統(tǒng)各界面所實現(xiàn)的功能以及用到的一些技術(shù),是讀者對本系統(tǒng)有個全面的認(rèn)識。4.1 登錄模塊登錄模塊是為保證信息的安全,只允許由用戶名和密碼的用戶進(jìn)入對系統(tǒng)進(jìn)行相關(guān)的操作,當(dāng)輸入正確時即可進(jìn)入系統(tǒng)。并提供會員注冊和修改、找回密碼鏈接。登入界面 Login.aspx,效果如圖 4.1 所示。圖 4.1 登錄界面會員登錄模塊的主要代碼為:protected void ImageButton1_Click(object sender, ImageClickEventArgs e) string sql = select count(*) from HY where Hid

25、= + TextBox1.Text + and Hpwd= + TextBox2.Text + ; int r = Int32.Parse(DBUtility.DbHelperSQL.GetSingle(sql).ToString(); if (r 0) HttpCookie cookie = new HttpCookie(name); cookie.Value =TextBox1.Text; Response.Cookies.Add(cookie); Response.Redirect(main.aspx); else Label5.Text = 用戶名或密碼錯誤; TextBox1.Tex

26、t = ; TextBox2.Text = ;課程設(shè)計說明書用紙- 12 - TextBox1.Focus(); 4.2 會員注冊模塊會員注冊模塊的功能是注冊新的會員,通過該模塊可將會員信息插入數(shù)據(jù)庫中,下次登陸時便可用此會員的用戶名和密碼登陸。用戶注冊界面 Hadd.aspx,效果如圖 4.2 所示。圖 4.2 用戶注冊頁面該模塊的主要代碼為:protected void ImageButton1_Click(object sender, ImageClickEventArgs e) string sql = select count(*) from HY where Hid= + Text

27、Box1.Text + and Hpwd=+TextBox2.Text+; int r = Int32.Parse(DBUtility.DbHelperSQL.GetSingle(sql).ToString(); if (r0) Label13.Text = 用戶名已存在!; else string sql1 = insert into HY(Hid,Hpwd,Hname,Hadd,Hphone) values(userId,userPwd,userName,userAddress,userPhone); SqlParameter pars = new SqlParameter5; pars0

28、 = new SqlParameter(userId, SqlDbType.VarChar); pars0.Value = TextBox1.Text; pars1 = new SqlParameter(userPwd, SqlDbType.VarChar); pars1.Value = TextBox2.Text; pars2 = new SqlParameter(userName, SqlDbType.VarChar); pars2.Value = TextBox4.Text; pars3 = new SqlParameter(userAddress, SqlDbType.VarChar)

29、; pars3.Value = TextBox5.Text; pars4 = new SqlParameter(userPhone, SqlDbType.VarChar); pars4.Value = TextBox6.Text; int s = DBUtility.DbHelperSQL.ExecuteSql(sql1, pars); string sql2 = select count(*) from HY where Hid= + TextBox1.Text + and Hpwd= + 課程設(shè)計說明書用紙- 13 -TextBox2.Text + ; int i=Int32.Parse(

30、 DBUtility.DbHelperSQL.GetSingle(sql2).ToString(); if (i 0) Label13.Text = 添加成功!; else Label13.Text = 添加失??!; 4.3 會員密碼修改模塊此模塊的功能是修改會員密碼,修改后會員可用新的密碼登陸。用戶修改密碼界面 Changepwd.aspx,效果如圖 4.3 所示。 圖 4.3 用戶修改密碼頁面會員修改模塊的主要代碼為:protected void Button1_Click(object sender, EventArgs e) string sql = select count(*) f

31、rom HY where Hid= + TextBox1.Text + and Hname= + TextBox2.Text + and Hphone= + TextBox3.Text + ; int j = Int32.Parse(DBUtility.DbHelperSQL.GetSingle(sql).ToString(); if (j 0) string sql1 = update HY set Hpwd=+TextBox4.Text+ where Hid= + TextBox1.Text + and Hname= + TextBox2.Text + and Hphone= + Text

32、Box3.Text + ; int i=DBUtility.DbHelperSQL.ExecuteSql(sql1); if (i0) Label14.Text = 密碼修改成功! ; else Label14.Text = 用戶信息填寫錯誤!; protected void Button2_Click(object sender, EventArgs e) Response.Redirect(Login.aspx); protected void Button3_Click(object sender, EventArgs e) TextBox1.Text = ; TextBox2.Text

33、 = ; TextBox3.Text = ;課程設(shè)計說明書用紙- 14 - TextBox4.Text = ; TextBox5.Text = ;4.4找回密碼模塊用戶通過此模塊,填寫正確的信息即可在頁面顯示出正確的密碼。用戶找回密碼界面 FindPwd.aspx,效果如圖 4.4 所示。 圖 4.4 用戶找回密碼頁面找回密碼模塊的主要代碼:protected void Button1_Click(object sender, EventArgs e) string sql = select Hpwd from HY where Hid=id and Hname=name and Hphone

34、=ph; string sql1 = select count(*) from HY where Hid=id and Hname=name and Hphone=ph; SqlParameter par = new SqlParameter3; par0 = new SqlParameter(id,TextBox1.Text); par1 = new SqlParameter(name,TextBox2.Text); par2 = new SqlParameter(ph, TextBox3.Text); int i = Int32.Parse(DBUtility.DbHelperSQL.Ge

35、tSingle(sql1,par).ToString(); if (i 0) string pwd = DBUtility.DbHelperSQL.GetSingle(sql,par).ToString(); Label7.Text=您的密碼時:+pwd; else Label8.Text=用戶信息填寫錯誤!; protected void Button2_Click(object sender, EventArgs e) Response.Redirect(Login.aspx); protected void Button3_Click(object sender, EventArgs e

36、) TextBox1.Text=; TextBox2.Text = ; TextBox3.Text = ; 課程設(shè)計說明書用紙- 15 -4.5 系統(tǒng)主模塊系統(tǒng)主模塊顯示餐飲信息和新聞信息,實現(xiàn)按名稱、價格范圍查找餐飲,訂購餐飲、瀏覽餐飲新聞以及鏈接到會員詳細(xì)信息界面等功能。本模塊通過新聞視圖、餐飲視圖查詢新聞、餐飲信息并顯示,通過存儲過程實現(xiàn)餐飲按名稱精確查找,通過函數(shù)實現(xiàn)餐飲按價格范圍查找。訂餐主界面 main.aspx,效果如圖 4.5 所示。圖 4.5 系統(tǒng)主模塊主模塊的主要代碼:public partial class main : System.Web.UI.Page string

37、 s; protected void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) AllowPage1.ControlID = Repeater1; AllowPage1.ControlType = 2; AllowPage1.PageSize =5; AllowPage1.SQL = select * from newsInformation order by NewsDate desc; AllowPage2.ControlID = Repeater2; AllowPage2.ControlType = 2; Al

38、lowPage2.PageSize = 5; AllowPage2.SQL = select * from cyInformation order by cprice ; if (Request.Cookiesname!= null) denglu.Visible = false;課程設(shè)計說明書用紙- 16 - zhuce.Visible = false; mypage.Visible = true; tuichu.Visible = true; s = Request.Cookiesname.Value; Label1.Text = s + ,歡迎您回來!; if (!Page.IsPost

39、Back) BindToRepeater(); BindToRepeater2(); else denglu.Visible = true; zhuce.Visible = true; BindToRepeater(); BindToRepeater2(); public void BindToRepeater() AllowPage1.DataTbl = DBUtility.DbHelperSQL.Query(AllowPage1.SQL).Tables0; PagedDataSource pds = AllowPage1.GetPagedDataSource(0); Repeater1.D

40、ataSource = pds; Repeater1.DataBind(); public void BindToRepeater2() AllowPage2.DataTbl = DBUtility.DbHelperSQL.Query(AllowPage2.SQL).Tables0; PagedDataSource pds1 = AllowPage2.GetPagedDataSource(0); Repeater2.DataSource = pds1; Repeater2.DataBind(); public string subTitle(object obj) string title =

41、 obj.ToString(); if (title.Length ) 10) return title.Substring(0, 10) + .; else return title; public string getDate(object obj) return DateTime.Parse(obj.ToString().ToShortDateString(); protected void Button1_Click(object sender, EventArgs e) if (Request.Cookiesname != null) if (Request.FormselectOn

42、e = null) Response.Write(alert(請先勾選!); else string a = Request.FormselectOne.ToString(); string s1 = a.Split(,); for (int j = 0; j(s1.Length; j+) string sql1 = select count(*) from DD where Hid= + Request.Cookiesname.Value + and Cid= + s1j; int i = Int32.Parse(DBUtility.DbHelperSQL.GetSingle(sql1).T

43、oString(); if (i 0) Response.Write(alert(此餐飲,數(shù)量已加1!);課程設(shè)計說明書用紙- 17 - string sql2 = update DD set Dnum=Dnum+1 where Cid=+s1j; DBUtility.DbHelperSQL.ExecuteSql(sql2); else string sql3 = insert into DD(Hid,Cid,Dnum,Ddate,Ydate) values( + Request.Cookiesname.Value + , + s1j + ,1, + DateTime.Now + ,+Text

44、Box1.Text+); DBUtility.DbHelperSQL.ExecuteSql(sql3); else Response.Redirect(Login.aspx); protected void Button2_Click(object sender, EventArgs e) if (Request.Cookiesname != null) if (Request.FormselectOne = null) Response.Write(alert(請先勾選!); else string a = Request.FormselectOne.ToString(); string s

45、1 = a.Split(,); for (int j = 0; j ( s1.Length; j+) string sql1 = delete from DD where Cid= + s1j; int i = DBUtility.DbHelperSQL.ExecuteSql(sql1); if (i0) Response.Write(alert(取消成功!); else Response.Write(alert(刪除失敗,請重新嘗試!); else Response.Redirect(Login.aspx); protected void byname_Click(object sender

46、, EventArgs e) if (cname.Text!= ) string sql2 = sa; IDataParameter par = new SqlParameter1; par0 = new SqlParameter(a, cname.Text); DataSet ds = DBUtility.DbHelperSQL.RunProcedure(sql2,par,ta); DataTable dt = ds.Tablesta; Repeater2.DataSource = dt; Repeater2.DataBind(); else Label3.Text = 請輸入要查詢的餐飲名

47、稱!; protected void byprice_Click(object sender, EventArgs e) if (cp1.Text != &cp2.Text!=) string sql3 = select * from searchbyprice(+cp1.Text+,+cp2.Text+); DataTable dt3 = DBUtility.DbHelperSQL.Query(sql3).Tables0; Repeater2.DataSource = dt3; Repeater2.DataBind(); else Label4.Text = 請輸入價格范圍!; 課程

48、設(shè)計說明書用紙- 18 -4.6新聞內(nèi)容顯示模塊 此模塊顯示新聞具體內(nèi)容以及發(fā)布人、發(fā)布時間、點擊次數(shù).新聞顯示界面 ShowNews.aspx,效果如圖 4.6 所示。圖 4.6 新聞顯示界面顯示新聞頁面代碼如下:public partial class ShowNews : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) string sql = update NEWS set hits=hits+1 where NewsId= + Request.Q

49、ueryStringNewsId.ToString(); DBUtility.DbHelperSQL.ExecuteSql(sql); BindToRepeater(); public void BindToRepeater() string sql = select NEWS.*,GLY.Gname from NEWS,GLY where GLY.Gid=NEWS.NewsUser and NewsId= + Request.QueryStringNewsId.ToString(); Repeater1.DataSource = DBUtility.DbHelperSQL.Query(sql

50、).Tables0; Repeater1.DataBind(); 4.7 用戶主頁模塊 用戶主頁模塊通過左邊超鏈接能實現(xiàn)查看個人詳細(xì)信息、訂單信息以及修改個人信息的功能用戶主頁模塊效果如下:(1)我的信息頁面 Myinformation.aspx,效果如圖 4.7圖 4.7 我的信息界面課程設(shè)計說明書用紙- 19 -我的信息頁面的主要代碼: public partial class Myinformation : System.Web.UI.Page string s; protected void Page_Load(object sender, EventArgs e) if (Reque

51、st.Cookiesname!=null) s = Request.Cookiesname.Value; if (!Page.IsPostBack) BingToRepeater(); public void BingToRepeater() string sql = select * from HY where HY.Hid= + s; DataTable dt = DBUtility.DbHelperSQL.Query(sql).Tables0; Repeater1.DataSource = dt; Repeater1.DataBind();(2) 我的訂單頁面 此頁面通過多表查詢顯示訂單

52、詳細(xì)信息,用戶可以選擇對訂單進(jìn)行支付或取消所有訂單信息。 我的信息頁面 MyOrder.aspx,效果如圖 4.8圖 4.8 我的訂單界面我的訂單頁面代碼:public partial class MyOrder : System.Web.UI.Page string s; protected void Page_Load(object sender, EventArgs e) if (Request.Cookiesname != null) s = Request.Cookiesname.Value; BingToRepeater(); else Response.Redirect(Logi

53、n.aspx); public void BingToRepeater() string sql = select DD.*,CY.Cname,Cprice,Dcount=Dnum*Cprice from DD,CY where 課程設(shè)計說明書用紙- 20 -DD.Cid=CY.Cid and Hid= + s; DataTable dt =DBUtility.DbHelperSQL.Query(sql).Tables0; Repeater1.DataSource = dt; Repeater1.DataBind(); public string getDate(object obj) ret

54、urn DateTime.Parse(obj.ToString().ToShortDateString(); protected void Button2_Click(object sender, EventArgs e) string sql = delete from DD where Hid=+s; int i= DBUtility.DbHelperSQL.ExecuteSql(sql); if (i 0) BingToRepeater(); Response.Write(alert(您已取消所有訂單); else Response.Write(alert(取消訂單出錯,請重新操作!);

55、(2) 修改資料頁面 此界面實現(xiàn)顯示會員信息和修改信息兩項功能。修改資料頁面 ChangeInformation.aspx,效果如圖 4.9圖 4.9 修改信息界面修改資料頁面主要代碼:public partial class ChangeInformation : System.Web.UI.Page string s; protected void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) if (Request.Cookiesname!= null) s = Request.Cookiesname.Value.

56、ToString(); string sql = select Hname as 姓名,Hpwd as 密碼,Hadd as 地址,Hphone as 聯(lián)系電話,Hsex as 性別 from HY where Hid=+s; DataTable dt=DBUtility.DbHelperSQL.Query(sql).Tables0; TextBox1.Text = dt.Rows00.ToString();/顯示姓名課程設(shè)計說明書用紙- 21 - TextBox2.Text = dt.Rows01.ToString();/顯示密碼 TextBox3.Text = dt.Rows02.ToSt

57、ring();/顯示地址 TextBox4.Text = dt.Rows03.ToString();/顯示聯(lián)系方式 TextBox5.Text = dt.Rows04.ToString();/顯示性別 protected void Button1_Click(object sender, EventArgs e) string sql = update HY set Hname= + TextBox1.Text + ,Hpwd= + TextBox2.Text + ,Hadd= + TextBox3.Text + ,Hphone= + TextBox4.Text + ,Hsex=+TextBo

58、x5.Text+ where Hid= + Request.Cookiesname.Value.ToString(); int r = DBUtility.DbHelperSQL.ExecuteSql(sql); if (r 0) Label5.Text = 修改成功!; else Label5.Text = 修改失敗,請重新修改!; 4.8 管理員登陸模塊管理員登陸模塊要求管理員通過用戶名和密碼進(jìn)入餐飲管理頁面,實現(xiàn)對餐飲、新聞、會員、訂單、數(shù)據(jù)庫的操作。管理員登陸模塊 GLogin.aspx,效果如圖 4.10圖 4.10 管理員登陸模塊管理員登陸模塊的主要代碼:public partia

59、l class Login : System.Web.UI.Page protected void Button1_Click(object sender, EventArgs e) string sql1 = select count(*) from GLY where Gid=+TextBox1.Text+ and Gpwd=+TextBox2.Text+; int i = Int32.Parse(DBUtility.DbHelperSQL.GetSingle(sql1).ToString(); if (i 0) HttpCookie cookie = new HttpCookie(nam

60、e); cookie.Value = TextBox1.Text; Response.Cookies.Add(cookie); Response.Redirect(Manage.aspx); else課程設(shè)計說明書用紙- 22 - Response.Write(alert(用戶名或密碼錯誤!); 4.9 管理員注冊模塊 管理員注冊頁面實現(xiàn)管理員的注冊功能,注冊成功后就能用注冊的用戶名、密碼登陸管理系統(tǒng)。管理員注冊模塊 GAdd.aspx,效果如圖 4.11圖 4.11 管理員注冊管理員注冊模塊的主要代碼:public partial class Admin_GAdd : System.Web.UI.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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論