版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 畢業(yè)論文</b></p><p> 基于web的訂餐系統(tǒng)的設(shè)計與實現(xiàn)</p><p> 基于web的訂餐系統(tǒng)的設(shè)計與實現(xiàn)</p><p><b> 摘要</b></p><p> 隨著市場、經(jīng)濟的全球化,越來越多的企業(yè)認識到:提高企業(yè)的競爭力,選擇信息化是必由之
2、路。本文論述的訂餐系統(tǒng)是針對餐飲娛樂業(yè)而設(shè)計的一種商務服務網(wǎng)站。其主要功能是完成外賣的前期和輔助工作,即通過網(wǎng)絡進行定餐和對服務進行評價。而餐飲工作流程的其他部分如送外賣、付款等后期工作依舊采用傳統(tǒng)方式。</p><p> 微軟的. NET平臺作為新一代的互聯(lián)網(wǎng)平臺,提供了支持未來計算的高效的Web服務開發(fā)工具。利用.NET平臺進行訂餐系統(tǒng)的開發(fā)是此類系統(tǒng)未來開發(fā)的趨勢之一。本文所設(shè)計的系統(tǒng)在.NET平臺上進行
3、開發(fā),采用了最新的ASP.NET技術(shù),用VB.NET進行了編碼,并使用SQL server進行數(shù)據(jù)庫設(shè)計,基本實現(xiàn)了預定的目標,建立起一個比較完整的外賣系統(tǒng)。其特點是方便快捷的操作方式,簡單易懂的管理方法,因此對于企業(yè)和用戶來說,都是一種新型的、節(jié)約型的系統(tǒng)。</p><p> 關(guān)鍵詞:企業(yè)信息化;訂餐系統(tǒng);.NET;ASP.NET;SQL server</p><p> The De
4、sign and Implementation of Bespeak Meal System Based on Web</p><p><b> Abstract</b></p><p> With the globalization of market and economy, more and more enterprises realize that inf
5、ormatization is the only way to elevate their competence. Management Information System (MIS) is a critical component of Enterprise informatization。</p><p> When diversified electronic business affairs web
6、setup, service vocations have to come up with. Bespeak Meal System mostly used to accomplish accessorial work, namely order dish and grad the service. The evening as distribute and gathering we are still using traditiona
7、l methods.</p><p> As a new age Internet platform, MS's .NET provides efficiency Web service Development tools which supports future computation. The development of take-away online system by .NET is ne
8、cessarily the trend of this kind of system development in the coming years. The system development bases on the .NET platform, while adopts the most recent ASP.NET tech. The coding part is finished by VB.NET. Finally, a
9、comparatively entire Bespeak Meal system is completed, which satisfies the general requirements. </p><p> Key Words: Enterprise Informatization; Bespeak Meal System; .NET; ASP.NET; SQL server</p><
10、;p><b> 目 錄</b></p><p><b> 論文總頁數(shù):24頁</b></p><p><b> 1引言1</b></p><p> 1.1課題背景1</p><p> 1.2本課題的研究內(nèi)容1</p><p>
11、; 1.3本課題研究的意義1</p><p> 2開發(fā)環(huán)境和相關(guān)技術(shù)2</p><p> 2.1.NET開發(fā)平臺及VB.NET開發(fā)語言2</p><p> 2.2信息安全性2</p><p><b> 3數(shù)據(jù)庫設(shè)計3</b></p><p> 3.1關(guān)于SQL語言
12、3</p><p> 3.2數(shù)據(jù)庫設(shè)計結(jié)構(gòu)3</p><p><b> 4系統(tǒng)設(shè)計5</b></p><p> 4.1系統(tǒng)總體流程5</p><p> 4.1系統(tǒng)模塊設(shè)計6</p><p> 4.1.1用戶模塊6</p><p> 4.1.2
13、管理員模塊8</p><p><b> 5系統(tǒng)實現(xiàn)8</b></p><p> 5.1用戶功能模塊實現(xiàn)8</p><p> 5.1.1新用戶注冊8</p><p> 5.1.2登錄11</p><p> 5.1.3訂餐12</p><p>
14、 5.1.4留言16</p><p> 5.2管理員模塊17</p><p> 5.2.1訂單管理17</p><p> 5.2.2留言管理19</p><p> 5.2.3菜單管理20</p><p> 5.2.4用戶管理21</p><p><b&g
15、t; 結(jié) 論21</b></p><p><b> 參考文獻22</b></p><p><b> 致 謝23</b></p><p><b> 聲 明24</b></p><p><b> 1引言</b>&l
16、t;/p><p><b> 課題背景</b></p><p> 隨著21世紀網(wǎng)絡信息時代的到來,現(xiàn)代社會都是利用快速高效率的Internet來傳播大量信息資源。人們通過IE瀏覽信息,當然這種方式也是最常用的,這種方式的需求形成了電子商務。它的是指利用簡單、快捷、低成本的電子通訊方式,買賣雙方不出面也可以進行各種商貿(mào)活動。電子商務真正的發(fā)展將是建立在Internet技術(shù)
17、上。</p><p> 現(xiàn)代化企業(yè)越來越明白,為了提高產(chǎn)品的銷量,贏得更多的客戶,不僅要在產(chǎn)品生產(chǎn)制造這一前方戰(zhàn)場上增加實力,還必須在服務和效率上投入更多的力量。在產(chǎn)品質(zhì)量相差不大的情況下,誰的服務好,效率高,誰就能贏得更多的顧客。這也是當今市場經(jīng)濟競爭機制下對企業(yè)的客觀要求。 </p><p> 近年來,由于互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展及其逐步普及,企業(yè)對信息進行網(wǎng)絡化管理的條件已經(jīng)日趨成熟
18、,而傳統(tǒng)的通過電話和傳真來處理信息的傳統(tǒng)方式已經(jīng)越來越難以滿足企業(yè)的需求。建立基于網(wǎng)絡的管理和銷售信息系統(tǒng),成為企業(yè)提高效率、降低成本、完善服務的有力保證。而對于餐飲業(yè),由于一個行業(yè)本身的特性,它的流通性是非常高的,所以更對企業(yè)的效率提出了更高的要求。</p><p> 微軟的NET平臺作為新一代的互聯(lián)網(wǎng)平臺,提供了支持未來計算的高效的Web服務開發(fā)工具。利用.NET平臺進行管理和銷售系統(tǒng)的開發(fā)成為此類系統(tǒng)未來
19、開發(fā)的趨勢。</p><p><b> 本課題的研究內(nèi)容</b></p><p> 本系統(tǒng)采用B/S(Browser/Server)結(jié)構(gòu)進行設(shè)計,使用SQL Server 2000構(gòu)建數(shù)據(jù)庫,并在.NET環(huán)境下使用Visual Basic.net語言開發(fā)的一個功能較為完善的訂餐系統(tǒng)。其具有一定的實用性,用戶可以在網(wǎng)上瀏覽菜單,瀏覽留言和評分,訂餐,留言和評分;同時
20、,管理員也可以對整個系統(tǒng)的信息和數(shù)據(jù)進行管理,可以管理菜單信息、會員信息、留言信息和訂單信息。</p><p><b> 本課題研究的意義</b></p><p> 本課題的目標是將傳統(tǒng)的通過電話和面對面的銷售的方式,轉(zhuǎn)換到基于網(wǎng)絡這樣一個更方便快捷的方式。為企業(yè)節(jié)約了很多的時間和精力。時間就是金錢,對企業(yè)來說,節(jié)約時間就是節(jié)約成本,就是盈利。對用戶來說,足不出戶
21、,就可以購買到自己想要吃的東西,對于所有的上班族來說,無疑是好之又好的事情。而且現(xiàn)在的網(wǎng)絡發(fā)展速度相當?shù)捏@人,那么基于網(wǎng)絡的訂餐也會越來越流行,必定是一個趨勢。</p><p><b> 開發(fā)環(huán)境和相關(guān)技術(shù)</b></p><p> .NET開發(fā)平臺及VB.NET開發(fā)語言</p><p> .NET框架是Microsoft公司推出的一種全
22、新的開發(fā)平臺,提供了統(tǒng)一的、面向?qū)ο蟛⑶铱梢詳U展的編程類庫和完善的集成開發(fā)環(huán)境,大大簡化了應用程序的開發(fā)過程,并且具有良好的移植性和安全性。ASP.NET是建立在公共語言運行庫上的Web編程框架,相對于ASP而言,ASP.NET提供了更強的性能、更方便的工具支持、更好的平臺支持和靈活性。其一大革命性進步是可以將應用程序邏輯與表示代碼清楚地分開,這樣一來Web應用程序的開發(fā)人員可以使用和Windows桌面程序開發(fā)類似的編程模型,從而大大降
23、低了開發(fā)難度。</p><p> 同時,ASP.NET在進行用戶界面開發(fā)和基礎(chǔ)程序結(jié)構(gòu)生成時具有很多優(yōu)勢。首先,ASP.NET是一個已編譯的、基于.NET的開發(fā)環(huán)境,利用整個.NET框架,開發(fā)人員可以方便的進行程序開發(fā);其次,ASP.NET可以無縫地與其它HTML編輯器及其編程工具一起工作,使得Web開發(fā)更加方便;再次,在ASP.NET中利用.NET框架中的ADO.NET的強大功能,可以高效便捷的訪問數(shù)據(jù)庫,A
24、SP.NET提供了簡單的模型,該模型使開發(fā)人員能夠編寫應用程序的運行邏輯,并且保留了會話狀態(tài)功能;最后,.NET框架和ASP.NET中提供了默認授權(quán)和驗證方案,可以根據(jù)需要方便地移除、添加或者替換這些方案。</p><p> Visual Basic.NET語言是Visual Basic 6.0的后繼版本,但它除了在語法上還保留Visual Basic原有的蹤影外,在其他的很多方面都和Visual Basic截
25、然不同。</p><p> Visual Basic.NET是一種完全面向?qū)ο蟮腂ASIC語言,它能夠繼承,重載,共享成員,結(jié)構(gòu)化異常處理。它有強壯的語言,嚴格的類型檢查,變量聲明時候初始化,支持垃圾收集。功能強大,支持委托,F(xiàn)reethreading、Variant數(shù)據(jù)類型被Object代替。VB.NET還提供了很多的類型轉(zhuǎn)換函數(shù)型運算符,如果不是標準類型,就要用函數(shù)型運算符CType來實現(xiàn)。在本次課題中也有
26、一定的使用。</p><p><b> 信息安全性</b></p><p> 在大多數(shù)系統(tǒng)中,用戶的密碼信息在數(shù)據(jù)庫中是以明文的方式存放的,數(shù)據(jù)庫管理員稍有疏忽就有可能導致用戶的隱私泄漏,尤其是對于一些涉及金融、商業(yè)領(lǐng)域的網(wǎng)絡應用,這一點漏洞將會導致十分嚴重的后果。所以,為了加強本系統(tǒng)信息的安全性,在用戶登錄模塊中,對密碼這樣的敏感信息進行加密是十分必要的。本課題
27、使用了一種常見的哈希加密算法——MD5加密算法。MD5加密算法是不可逆的,經(jīng)過哈希加密的數(shù)據(jù)是沒有相應的解密算法回到原狀的,在應用中是通過比較兩個數(shù)據(jù)的哈希值是否相等,從而達到校驗的目的。本課題中,在新客戶注冊的時候,對客戶設(shè)置的登錄密碼用MD5加密算法進行加密,那么存入數(shù)據(jù)庫的將是客戶登錄密碼的MD5哈希值,在登錄驗證時根據(jù)用戶輸入的密碼計算響應的MD5哈希值進行比較。</p><p> 可見,通過MD5算法
28、實現(xiàn)了數(shù)據(jù)的加密存儲和驗證,同時,MD5加密是不可逆的,即使惡意攻擊者獲得了數(shù)據(jù)庫的訪問權(quán)限,也仍然無法得知用戶的密碼信息,從而提高了系統(tǒng)的安全性!</p><p><b> 數(shù)據(jù)庫設(shè)計</b></p><p><b> 關(guān)于SQL語言</b></p><p> SQL語言作為關(guān)系數(shù)據(jù)庫管理系統(tǒng)中的一種通用的結(jié)構(gòu)化查
29、詢語言,已經(jīng)被眾多的數(shù)據(jù)庫管理系統(tǒng)所采用。使用Visual Basic.NET開發(fā)數(shù)據(jù)庫應用程序時,用戶可以使SQL語言編程,這是Visual Basic.NET作為一個強大的數(shù)據(jù)庫應用開發(fā)工具的一個重要標志。</p><p> SQL語言被廣泛采用是因為它有很多的優(yōu)點:它是一個非過程化的語言,一次處理一個記錄,對數(shù)據(jù)提供自動導航;SQL允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而部隊單個記錄進行操作,可操作記錄集;接
30、受集合作為輸入,返回集合作為輸出;允許一條SQL語句的結(jié)果作為另一條SQL語句的輸入。SQL不要求用戶指定對數(shù)據(jù)的存放方法,是用戶更易集中精力于要得到的記過。SQL可用于所有的用戶,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、應用程序員、決策支持系統(tǒng)人員及許多其他類型的中斷用戶。由于所有的主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可以將使用SQL的技能從一個關(guān)系數(shù)據(jù)庫管理系統(tǒng)轉(zhuǎn)到另一個;所有用SQL編寫的程序都是可以移植的。</p>
31、<p><b> 數(shù)據(jù)庫設(shè)計結(jié)構(gòu)</b></p><p> 本設(shè)計主要由6個數(shù)據(jù)表組成:菜單表(dish),用戶表(shopper),管理員表(manager),新訂單表(neworder),添加訂單表(orderadd)存儲用戶的訂餐信息,留言信息表(message)存儲留言,這些表都集中在一個數(shù)據(jù)庫里面。</p><p><b> 數(shù)據(jù)
32、表:</b></p><p> 與用戶相關(guān)的數(shù)據(jù)表有:菜單表(dish),用戶表(shopper),新訂單表(neworder),添加訂單表(orderadd),留言信息表(message)。分別如表1,表2,表3,表4所示。</p><p> 表1 菜單表(dish)</p><p> 表2 用戶表(shopper)</p><
33、;p> 表3 新訂單表(neworder)</p><p> 表4添加訂單表(orderadd)</p><p> 表5 留言信息表(message)</p><p> 與管理員相關(guān)的數(shù)據(jù)表有:管理員表(manager),如表6。</p><p> 表6 管理員表(manager)</p><p>&l
34、t;b> 系統(tǒng)設(shè)計</b></p><p><b> 4.1系統(tǒng)總體流程</b></p><p> 系統(tǒng)的總體流程如圖1所示,注冊用戶可以進行訂餐和留言、評分;管理員可以進行訂單管理,留言和評分管理,用戶管理,菜單管理等操作。</p><p> 圖1 系統(tǒng)總體流程圖</p><p><b&
35、gt; 系統(tǒng)模塊設(shè)計</b></p><p> 總體分為用戶和管理員兩個模塊</p><p><b> 用戶模塊</b></p><p> 圖2 用戶模塊流程圖</p><p> 1.新用戶注冊:填寫注冊信息。</p><p> 2.注冊用戶登錄:只有登錄才能查看留言和訂餐
36、。</p><p> 3.訂餐:記錄用戶的訂餐信息。</p><p> 4.留言:記錄用戶的留言和評分信息。</p><p><b> 管理員模塊</b></p><p> 圖3 管理員模塊流程圖</p><p> 1.訂單管理:對用戶的訂單進行處理或刪除。</p><
37、;p> 2.留言管理:對用戶的留言進行查看或刪除。</p><p> 3.用戶管理:對用戶信息進行查看或刪除。</p><p> 4.菜單管理:對菜單進行修改或者刪除,添加新菜品。</p><p><b> 系統(tǒng)實現(xiàn)</b></p><p><b> 用戶功能模塊實現(xiàn)</b><
38、/p><p> 用戶模塊包括:新用戶注冊,注冊用戶登錄,注冊用戶訂餐,注冊用戶留言和評分。</p><p><b> 新用戶注冊</b></p><p> 用戶填寫注冊信息包括必填項:用戶名,密碼,驗證密碼,email;和可選填寫的信息。注冊成功后返回登錄成功頁面,可以選擇進行訂餐和留言、評分操作。</p><p>&
39、lt;b> 流程圖如下:</b></p><p><b> 圖4 注冊流程圖</b></p><p><b> 注冊頁面設(shè)計如圖:</b></p><p><b> 圖5 注冊頁面</b></p><p> 在提交的時候,檢測用戶名是否已經(jīng)存在,若存
40、在,則返回錯誤信息,重新填寫注冊信息。從工作流上看,只有注冊成功后才可以進行訂餐和留言。</p><p><b> 代碼如下:</b></p><p> conn.ConnectionString = "Connect Timeout=5;packet size=4096;persist security info=False;initial catal
41、og=dishsale;data source=32A5C0037011401;user id=sa;password=''"‘鏈接數(shù)據(jù)庫</p><p> cmd.Connection = conn</p><p> cmd.CommandType = CommandType.Text</p><p> conn.Open()<
42、;/p><p> Dim strsql As String = "select * from shopper where cshopperid='" & Trim(txtName.Text) & "'"</p><p> cmd = New SqlCommand(strsql, conn)</p><
43、;p> Dim reader As SqlDataReader = cmd.ExecuteReader() </p><p> If reader.Read() = True Then</p><p> namewrong.Text = "已有此用戶名"</p><p> conn.Close()</p><p&
44、gt;<b> Else</b></p><p> conn.Close()</p><p> 所有信息正確便將密碼加密之后,將所有信息插入數(shù)據(jù)表shopper中。</p><p><b> 代碼如下:</b></p><p> Dim conn1 As New System.Data.S
45、qlClient.SqlConnection</p><p> Dim cmd1 As New System.Data.SqlClient.SqlCommand</p><p> Dim str1 As String</p><p> Dim str2 As String</p><p> str1 = Password1.Text&
46、lt;/p><p> str2 = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str1, "MD5")</p><p> ‘使用MD5加密算法加密密碼文本框的值</p><p> conn1.ConnectionString = &quo
47、t;Connect Timeout=5;packet size=4096;persist security info=False;initial catalog=dishsale;data source=32A5C0037011401;user id=sa;password=''"</p><p> cmd1.Connection = conn1</p><p>
48、; cmd1.CommandType = CommandType.Text</p><p> conn1.Open()</p><p> sqlstr = "insert shopper([cshopperid],[cpassword],[csex],[cage],[vaddress],[cphone],[vemail],[vmemo],[dregistertime],[d
49、lastlandtime]) values('"</p><p> sqlstr += txtName.Text & "','"</p><p> sqlstr += str2 & "','"</p><p> If man.Checked Then<
50、;/p><p> sqlstr += "男','"</p><p> ElseIf woman.Checked Then</p><p> sqlstr += "女','"</p><p><b> End If</b></p>&
51、lt;p> sqlstr += txtAge.Text & "','"</p><p> sqlstr += txtAddress.Text & "','"</p><p> sqlstr += txtPhone.Text & "','"</
52、p><p> sqlstr += txtEmail.Text & "','"</p><p> sqlstr += txtMemo.Text & "','"</p><p> sqlstr += System.DateTime.Now & "',
53、9;"</p><p> sqlstr += System.DateTime.Now & "')"</p><p> cmd1.CommandText = sqlstr ‘將注冊信息插入數(shù)據(jù)庫</p><p> cmd1.ExecuteNonQuery()</p><p> conn1.
54、Close() </p><p><b> 注冊成功頁面如下:</b></p><p><b> 圖6 注冊成功</b></p><p><b> 登錄</b></p><p> 用戶需要填寫用戶名和密碼,對輸入的用戶名與數(shù)據(jù)庫的進行比較,若沒有則返回錯誤,對密碼也進行
55、判斷,因為密碼在保存時是經(jīng)過MD5加密的,所以在判斷的時候也把輸入的密碼先進行MD5加密,然后進行比較。登錄成功進入登錄成功頁面。</p><p><b> 流程圖如下:</b></p><p><b> 圖7 登錄流程圖</b></p><p><b> 登錄頁面設(shè)計如下:</b></p
56、><p><b> 圖8 登錄頁面</b></p><p><b> 代碼如下:</b></p><p> Dim cmd As New System.Data.SqlClient.SqlCommand</p><p> conn.Open()Dim str As String</p>
57、;<p> str = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(txtPass.Text, "MD5") ‘使用MD5加密密碼文本框的值,用于下面跟數(shù)據(jù)庫里面的值進行比較</p><p> cmd.CommandText = "select * from
58、shopper where cshopperid='" & Trim(txtName.Text) & "' and cpassword= '" & str & "' "</p><p> cmd.Connection = conn</p><p> Dim reader A
59、s SqlDataReader = cmd.ExecuteReader</p><p> If reader.Read() Then</p><p> Session("cshopperid") = Trim(reader("cshopperid")) ‘檢測用戶名是否已經(jīng)存在</p><p> Response.R
60、edirect("login_suc.aspx")</p><p><b> Else</b></p><p> Session("cshopperid") = Nothing</p><p> wrong.Text = "用戶名或者密碼錯誤!"</p><p
61、><b> End If</b></p><p> conn.Close() </p><p> 登錄成功后界面如下:</p><p><b> 圖9 登錄成功</b></p><p><b> 訂餐</b></p><p> 使用DA
62、TAGRID綁定DISH表顯示菜單,在DATAGRID上每行綁定一個多選按鈕和下拉列表,進行多選和數(shù)量的選擇。然后在文本框中輸入送餐的地點,電話和其他的備注信息。若菜品和地址都填寫好,則進入訂餐成功頁面,可以查看自己的訂餐信息,可以進行修改和刪除。若錯誤,則報告錯誤信息,返回訂餐頁面。</p><p><b> 流程圖如下:</b></p><p><b>
63、; 圖10 訂餐流程圖</b></p><p><b> 訂餐頁面設(shè)計如下:</b></p><p><b> 圖11 訂餐頁面 </b></p><p> 綁定數(shù)據(jù),代碼如下:</p><p> '指定數(shù)據(jù)源并綁定到DataGrid控件</p><
64、p> Private Sub BindGrid()</p><p> Dim conn As New SqlConnection</p><p> Dim cmd As New SqlCommand</p><p> Dim DS As New DataSet</p><p> conn.ConnectionString =
65、"Connect Timeout=5;packet size=4096;persist security info=False;initial Catalog=dishsale;data source=32A5C0037011401;user id=sa;password=''"</p><p> conn.Open()</p><p> cmd.C
66、onnection = conn</p><p> Dim adpt1 As New SqlDataAdapter("select cdishid,vdishname 菜品名稱,cdishrate 價格,vdishdescription 口味 from dish", conn) ‘顯示dish表的內(nèi)容</p><p> adpt1.Fill(DS, "
67、OUTER")</p><p> DataGrid1.DataSource = DS</p><p> DataGrid1.DataBind()</p><p> conn.Close()</p><p><b> End Sub </b></p><p> ‘在綁定每行時,判
68、斷多選按鈕的狀態(tài)和下拉列表的狀態(tài)</p><p> Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound</p><p> If e.It
69、em.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then</p><p> Dim offset As Integer</p><p> offset = txtSaveValue.Value.IndexOf(CType(e.Item.Cells(1).FindContr
70、ol("TitleShow"), Literal).Text)</p><p> If txtSaveValue.Value.IndexOf(CType(e.Item.Cells(1).FindControl("TitleShow"), Literal).Text) >= 0 Then</p><p> Dim ChkSelected As
71、 HtmlInputCheckBox = CType(e.Item.Cells(0).FindControl("ChkSelect"), HtmlInputCheckBox)</p><p> ChkSelected.Checked = True</p><p> offset = txtSaveValue.Value.IndexOf(",",
72、offset)</p><p> Dim numoffset As String</p><p> numoffset = txtSaveValue.Value.Substring(offset + 1, 1)</p><p> Dim NumSelected As HtmlSelect = CType(e.Item.Cells(2).FindControl(
73、"snumber"), HtmlSelect)</p><p> Dim x As Integer</p><p> x = CInt(numoffset) - 1</p><p> NumSelected.SelectedIndex = x</p><p><b> End If</b>&l
74、t;/p><p><b> End If</b></p><p><b> End Sub</b></p><p> 在點擊提交時,判斷選定的菜品及數(shù)量和輸入的信息,并插入數(shù)據(jù)庫。</p><p><b> 代碼如下:</b></p><p> P
75、rivate Sub Submit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Submit.Click</p><p> If txtSaveValue.Value = "" Then</p><p> Me.lb_info.Text = "請選擇菜品
76、!"</p><p> ElseIf Request("memo") = "" Then</p><p> Me.lb_info.Text = "請輸入您的地址!"</p><p><b> Else</b></p><p> GetDishC
77、art() ‘調(diào)用GetDishCart將數(shù)據(jù)寫入數(shù)據(jù)庫</p><p> Me.lb_info.Text = "suc"</p><p> Response.Write("<SCRIPT language=JavaScript>alert('提交成功!');")</p><p> Res
78、ponse.Write("this.location.href='order_suc.aspx';</SCRIPT>")</p><p><b> End If</b></p><p><b> End Sub</b></p><p> Private Sub GetD
79、ishCart()</p><p> Dim IdList() As String = txtSaveValue.Value.ToString().Split(";")</p><p> Dim tconn As New SqlConnection</p><p> Dim tcmd As New SqlCommand</p>
80、<p> Dim objReader As SqlDataReader</p><p> Dim x As Integer</p><p> tconn.ConnectionString = "Connect Timeout=5;packet size=4096;persist security info=False;initial catalog=dishsa
81、le;data source=32A5C0037011401;user id=sa;password=''"</p><p> tconn.Open()</p><p> tcmd.Connection = tconn</p><p> tcmd.CommandText = "select orderid from newo
82、rder order by oid desc"</p><p> objReader = tcmd.ExecuteReader()</p><p> If objReader.Read Then</p><p> x = CInt(objReader("orderid")) + 1</p><p><
83、;b> End If</b></p><p> objReader.Close()</p><p> tconn.Close()</p><p> For i As Integer = 0 To IdList.Length - 2 Step 1</p><p> Dim NuList() As String = I
84、dList(i).Split(",")</p><p> tconn.Open()</p><p> tcmd.CommandType = CommandType.StoredProcedure</p><p> tcmd.CommandText = "orderinsert" ‘調(diào)用存儲過程向neworder表
85、插入數(shù)據(jù)</p><p> tcmd.Parameters.Clear()</p><p> tcmd.Parameters.Add(New SqlParameter("@orderid", x))</p><p> tcmd.Parameters.Add(New SqlParameter("@dishid", NuLi
86、st(0)))</p><p> tcmd.Parameters.Add(New SqlParameter("@dishnumber", NuList(1)))</p><p> tcmd.Parameters.Add(New SqlParameter("@userid", Session("cshopperid")))<
87、;/p><p> tcmd.Parameters.Add(New SqlParameter("@birdate", DateTime.Now.ToLongDateString()))</p><p> tcmd.ExecuteNonQuery()</p><p> tconn.Close()</p><p><b&
88、gt; Next</b></p><p><b> '插入相應訂單地址</b></p><p> Dim tsql As String</p><p> tsql = "Insert into orderadd values('" & x & "',
89、9;" & Request("memo") & "')"</p><p> tcmd.CommandType = CommandType.Text</p><p> tcmd.CommandText = tsql</p><p> tconn.Open()</p><
90、p> tcmd.ExecuteNonQuery()</p><p> tconn.Close()</p><p> Session("orderid") = CStr(x)</p><p><b> End Sub </b></p><p> 訂餐成功后,頁面如下:</p>
91、<p> 圖12 訂餐成功頁面</p><p><b> 留言</b></p><p> 在留言頁面,用戶可以對服務進行評分,同時進行留言</p><p> 對留言的顯示同樣采用DATAGRID對數(shù)據(jù)庫進行讀取然后顯示。提交留言的時候?qū)Ψ謹?shù)進行判斷,然后對留言內(nèi)容是否為空進行判斷,然后寫進數(shù)據(jù)庫。</p>&
92、lt;p><b> 流程圖如下:</b></p><p><b> 圖13 留言流程圖</b></p><p><b> 代碼如下:</b></p><p> If Request("word") = "" Then</p><
93、p> Response.Write("<SCRIPT language=JavaScript>alert('留言信息不能為空!');")</p><p> Response.Write("this.location.href='message.aspx';</SCRIPT>")</p><
94、p><b> End If</b></p><p> sqlstr = "insert message([cmessageid],[cshopperid],[dmessagetime],[cscore],[vmessage]) values('++ cmessageid ','" & Session("cshopperi
95、d") & "','" & System.DateTime.Now & "','"</p><p><b> ‘判斷評分的分數(shù)值</b></p><p> If s1.Checked Then</p><p> sqlstr += &
96、quot;1','"</p><p> ElseIf s2.Checked Then</p><p> sqlstr += "2','"</p><p> ElseIf s3.Checked Then</p><p> sqlstr += "3','
97、;"</p><p> ElseIf s4.Checked Then</p><p> sqlstr += "4','"</p><p> ElseIf s5.Checked Then</p><p> sqlstr += "5','"</p>
98、;<p><b> End If</b></p><p> sqlstr += Request("word") & "')"</p><p> cmd1.CommandText = sqlstr</p><p> cmd1.ExecuteNonQuery()</
99、p><p> conn1.Close()</p><p> BindGrid()</p><p> Response.Write("<SCRIPT language=JavaScript>alert('留言成功!');")</p><p> Response.Write("this
100、.location.href='message.aspx ';</SCRIPT>")</p><p> 留言成功后,將DATAGRID重新綁定,返回到留言頁面。</p><p><b> 管理員模塊</b></p><p> 在此模塊中,采用技術(shù)都是一樣的,所以同一種操作只列出一個。</p>
101、;<p><b> 訂單管理</b></p><p> 使用DATAGRID綁定數(shù)據(jù)庫顯示訂單信息,</p><p> 訂單信息分為三類,已經(jīng)確認的和沒有確認的還有已經(jīng)處理的。</p><p> 沒有確認的訂單信息,管理員都可以進行確認或者刪除。</p><p><b> 流程圖如下:&
102、lt;/b></p><p> 圖14 訂單管理流程圖</p><p><b> 確認訂單代碼如下:</b></p><p> 'command事件處理</p><p> Sub PickArt(ByVal sender As Object, ByVal e As DataGridCommandEv
103、entArgs)</p><p> If e.CommandName = "Delete" Then</p><p> Dim Selected_Id As Integer</p><p> Selected_Id = CInt(e.Item.Cells(2).Text)</p><p> Dim conn As
104、New SqlConnection</p><p> Dim cmd As New SqlCommand</p><p> conn.ConnectionString = "Connect Timeout=5;packet size=4096;persist security info=False;initial Catalog=dishsale;data source=32
105、A5C0037011401;user id=sa;password=''"</p><p> conn.Open()</p><p> cmd.Connection = conn</p><p> '形成delete語句</p><p> cmd.CommandText = "delete
106、from neworder where dishid =" & Selected_Id</p><p> cmd.ExecuteNonQuery()</p><p> conn.Close()</p><p> ElseIf e.CommandName = "Select" Then</p><p>
107、; Dim Selected_Id As Integer</p><p> Selected_Id = CInt(e.Item.Cells(2).Text)</p><p> Dim conn As New SqlConnection</p><p> Dim cmd As New SqlCommand</p><p> conn.
108、ConnectionString = "Connect Timeout=5;packet size=4096;persist security info=False;initial Catalog=dishsale;data source=32A5C0037011401;user id=sa;password=''"</p><p> conn.Open()</p>
109、;<p> cmd.Connection = conn</p><p> '形成更新語句修改處理的標志位</p><p> cmd.CommandText = "update neworder set status= status+1 where dishid =" & Selected_Id</p><p>
110、 cmd.ExecuteNonQuery()</p><p> conn.Close()</p><p> 處理訂單操作和確認訂單相似,都含有處理和刪除兩個按鈕列,以便于進行操作。所有已經(jīng)處理過的訂單,都可以通過另一個頁面進行管理操作,里面只包含了一個按鈕列:刪除。 </p><p><b> 留言管理</b></p>&
111、lt;p> 使用DATAGRID綁定數(shù)據(jù)庫顯示留言信息,在DATAGRID上添加一列按鈕列進行刪除操作。</p><p><b> 流程圖如下:</b></p><p> 圖15 留言管理流程圖</p><p><b> 代碼如下:</b></p><p><b>
112、9;刪除事件處理</b></p><p> Sub PickArt(ByVal sender As Object, ByVal e As DataGridCommandEventArgs)</p><p> If e.CommandName = "Delete" Then</p><p> Dim Selected_Id As
113、Integer</p><p> Selected_Id = CInt(e.Item.Cells(1).Text)</p><p> Dim conn As New SqlConnection</p><p> Dim cmd As New SqlCommand</p><p> conn.ConnectionString = &qu
114、ot;Connect Timeout=5;packet size=4096;persist security info=False;initial Catalog=dishsale;data source=32A5C0037011401;user id=sa;password=''"</p><p> conn.Open()</p><p> cmd.Conn
115、ection = conn</p><p> '形成delete語句</p><p> cmd.CommandText = "delete from message where id =" & Selected_Id</p><p> cmd.ExecuteNonQuery()</p><p> c
116、onn.Close()</p><p><b> End If</b></p><p> BindGrid()</p><p><b> End Sub</b></p><p><b> 菜單管理</b></p><p> 使用DATAGRID
117、綁定數(shù)據(jù)庫顯示留言信息,在DATAGRID上添加兩個按鈕列進行刪除操作和更新操作,還可進行新菜品的添加。</p><p><b> 流程圖如下:</b></p><p> 圖16 菜單管理流程圖</p><p><b> 添加菜品代碼如下:</b></p><p> cmd1.Command
118、Text = "select max(cdishid) maxcdishid from dish" ‘查找菜品ID 的最大值</p><p> objReader = cmd1.ExecuteReader()</p><p> If objReader.Read Then</p><p> x = CInt(objReader("
119、;maxcdishid")) + 1 ‘將最大值+1</p><p><b> End If</b></p><p> objReader.Close() </p><p> conn2.ConnectionString = "Connect Timeout=5;packet size=4096;persist
120、 security info=False;initial catalog=dishsale;data source=32A5C0037011401;user id=sa;password=''"</p><p> cmd2.Connection = conn2</p><p> cmd2.CommandType = CommandType.Text</p
121、><p> conn2.Open()</p><p> strsql = "Insert Into dish (cdishid,vdishname,vdishdescription,cdishrate ) Values('x','" & Trim(name.Text) & "','" &
122、 Trim(description.Text) & "','" & Trim(dishrate.Text) & "')"</p><p> cmd2.CommandText = strsql</p><p> cmd2.ExecuteNonQuery() ‘將新菜品的信息插入數(shù)據(jù)庫</p
123、><p> conn2.Close()</p><p> Response.Write("<SCRIPT language=JavaScript>alert('操作成功!');")</p><p> Response.Write("this.location.href='menumanage.asp
124、x ';</SCRIPT>")</p><p><b> 用戶管理</b></p><p> 同樣采用DATAGRID綁定數(shù)據(jù)庫進行顯示,在DATAGRID上添加按鈕列:刪除,進行刪除操作。</p><p><b> 流程圖如下:</b></p><p> 圖1
125、7 用戶管理流程圖</p><p><b> 結(jié) 論</b></p><p> 隨著互聯(lián)網(wǎng)的興起和普及,網(wǎng)絡信息化的發(fā)展,在線訂餐作為一種較為典型的Web電子商務系統(tǒng)也迅速的發(fā)展并深入人們的日常生活中。Web訂餐系統(tǒng)跨越了時間和空間的限制,給餐飲業(yè)帶來了不一樣的變革,也給消費者帶來了便捷。</p><p> 本系統(tǒng)采用B/S(Brow
126、ser/Server)結(jié)構(gòu)進行設(shè)計,使用SQL Server 2000構(gòu)建數(shù)據(jù)庫,并在.NET環(huán)境下使用Visual Basic.net語言開發(fā)的一個功能較為完善的訂餐系統(tǒng)。其具有一定的實用性,用戶可以在網(wǎng)上瀏覽菜單,瀏覽留言和評分,訂餐,留言和評分;同時,管理員也可以對整個系統(tǒng)的信息和數(shù)據(jù)進行管理,可以管理菜單信息、會員信息、留言信息和訂單信息。</p><p> 雖然這次的訂餐系統(tǒng)它是電子商務系統(tǒng),但是它只
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文——基于web的訂餐系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)論文--基于web的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)
- 基于web的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)【畢業(yè)論文】
- 畢業(yè)設(shè)計(論文)基于web的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)論文-----網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)
- 網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文
- 基于jsp的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)-畢業(yè)論文
- 基于php的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文
- 基于jsp的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)-畢業(yè)論文
- 基于WEB的網(wǎng)上訂餐系統(tǒng)畢業(yè)論文(二稿).doc
- 基于WEB的網(wǎng)上訂餐系統(tǒng)畢業(yè)論文(終稿).doc
- 基于web的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)
- 基于web的畢業(yè)論文管理系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)論文 基于web在線考試系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)論文(設(shè)計)基于web考試系統(tǒng)設(shè)計與實現(xiàn)
- 基于WEB的網(wǎng)上訂餐系統(tǒng)畢業(yè)論文(一稿).doc
- 畢業(yè)論文--基于web的商場管理系統(tǒng)的設(shè)計與實現(xiàn)
- 基于web的招投標系統(tǒng)的設(shè)計與實現(xiàn)——畢業(yè)論文
- 畢業(yè)論文---基于bs的網(wǎng)上訂餐系統(tǒng)設(shè)計
- 基于web新聞發(fā)布系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文
評論
0/150
提交評論