




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 畢業(yè)設(shè)計(論文)題 目 分布式網(wǎng)吧商品銷售系統(tǒng) 專 業(yè) 計算機(jī)應(yīng)用 班 級 計算機(jī)1班 學(xué) 號 姓 名 指導(dǎo)教師 2011年 1 月 8 日 畢業(yè)設(shè)計任務(wù)書學(xué)生姓名 專業(yè)班級08計算機(jī)1班聯(lián)系方式 指導(dǎo)老師 指導(dǎo)老師職稱講師聯(lián)系方式 課題名稱課題任務(wù)要求一、設(shè)計的技術(shù)要求(或論文的主要內(nèi)容):系統(tǒng)由客戶端與服務(wù)器端組成;客戶端:選擇商品,訂購商品,購物車服務(wù)器端;接收信息,遞送商品后完成交易,交易信息存入數(shù)據(jù)庫;完成客戶端與服務(wù)器端的信息連通性,保證同時多臺機(jī)器連接服務(wù)器端不出錯二、實施操作的技能要求:1.使用microsoft visual studio 2005作為開發(fā)工具, 數(shù)據(jù)庫采用
2、sql2000。2.使用工具開發(fā),達(dá)到無錯誤運行。3.適應(yīng)本課題,達(dá)到實用性第一。4其它三、時間安排與要求:階段一:11月5日-1月19日確定課題,完成畢業(yè)設(shè)計階段二:1月19日-11月26日完成開題報告階段三:11月26日-12月17日 完成課題的設(shè)計工作階段四:12月17日-12月31日完成論文初稿階段五:12月31日-1月13日完成論文并上交階段六:2月21日-3月4日參加畢業(yè)答辯教研室審批意見 教研室主任(簽字) 年 月 日系部審批意見 分管系主任(簽字) 年 月 日指導(dǎo)教師(簽字) 年 月 日分布式網(wǎng)吧銷售系統(tǒng)【摘要】 隨著網(wǎng)絡(luò)的發(fā)展和普及,上網(wǎng)已經(jīng)成為人們?nèi)粘I钪斜夭豢缮俚男蓍e活
3、動,而網(wǎng)吧也隨之而產(chǎn)生。網(wǎng)吧給人們提供了一個開放而舒適的上網(wǎng)環(huán)境,人們可以長時間的呆在網(wǎng)吧里面聊天,沖浪,打游戲,學(xué)習(xí)。精神食糧是有了,可是物質(zhì)食糧卻極度缺乏,饑腸轆轆又怎么能安心上網(wǎng)呢?而目前大多數(shù)網(wǎng)吧只提供一些礦泉水,并不能解決顧客這方面的問題。倘若網(wǎng)吧在提供上網(wǎng)的同時可以有一些食品和飲料銷售的話,不僅可以讓顧客上的安心,玩的開心,還可以增加數(shù)量可觀的額外收入,同時舒適而貼心的上網(wǎng)環(huán)境又可以吸引更多的顧客,真是一舉兩得。分布式網(wǎng)吧商品銷售系統(tǒng)就是為了配合這一市場需求而開發(fā)的軟件,簡單易用體貼用戶是本系統(tǒng)的主要特點。上網(wǎng)的顧客只需點一下懸浮在桌面上的按鈕就可以挑選自己需要的商品,發(fā)出請求后服
4、務(wù)器即可收到信息,把商品送到,絕對方便快捷。本項目使用microsoft visual studio 2005平臺開發(fā)。sql 2000作為數(shù)據(jù)庫開發(fā)工具,采用c# c/s系統(tǒng),使用socket局域網(wǎng)通信代碼。 【關(guān)鍵詞】分布式 網(wǎng)吧商品銷售 客戶端 服務(wù)器 c/s distribution internet cafes sales system 【abstract】 with the development and popularization of the internet has become indispensable in daily life of leisure activiti
5、es, and internet cafes also will be generated. cafes to provide people with access to the internet an open and comfortable environment, people can stay a long time inside the cafe to chat, surf, play games, learn. food for thought is there, but the food is extremely lacking substance, hungry, how it
6、 can surf the internet safely? at present the majority of internet cafes provide only mineral water, and can not solve this problem customers. if the cafes in the provision of internet access at the same time can have some food and beverage sales, not only would allow the customer the peace of mind,
7、 have fun, but also can increase the number of significant additional revenue, while comfortable and intimate environment for the internet to attract more customers really do both. cafe merchandise sales system is distributed with the market demand for the development of software, easy to use and co
8、nsiderate users are the main features of the system. customers can simply tap the internet suspended in the desktop button to select the goods they need, you can request information received after the server, the goods are delivered absolutely convenient. the project uses microsoft visual studio 200
9、5 platform. sql 2000 as a database development tool, c # c / s system, the use of local area network socket communication code.【keywords】 distributed client-server internet cafes merchandising c / s目 錄引 言1第一章 開發(fā)環(huán)境21.1 開發(fā)運行環(huán)境21.1.1 c# 開發(fā)21.1.2 c/s結(jié)構(gòu)21.1.3 sql 200031.1.4 socket3第二章 系統(tǒng)結(jié)構(gòu)及需求分析42.1 系統(tǒng)需求分
10、析42.2 系統(tǒng)構(gòu)架圖42.3主要功能及數(shù)據(jù)庫設(shè)計4第三章 系統(tǒng)設(shè)計頁面及功能73.1 客戶端設(shè)計實現(xiàn)73.1.1 客戶端登陸73.1.2 客戶端登陸實現(xiàn)73.1.3客戶端主界面73.1.4 客戶端主界面功能實現(xiàn)93.2 服務(wù)器端界面及功能實現(xiàn)113.2.1 服務(wù)器登陸113.2.2 服務(wù)器登陸功能實現(xiàn)123.2.3 服務(wù)器主界面123.2.4 服務(wù)器主界面接收偵聽信息功能實現(xiàn)133.2.5 交易操作143.2.6 交易查詢153.2.7 商品信息管理163.2.8 管理員管理183.2.9 幫助及關(guān)于19第四章 系統(tǒng)備份204.1 系統(tǒng)備份204.2 系統(tǒng)備份功能實現(xiàn)204.2.1 系統(tǒng)備份
11、功能界面20第五章 調(diào)試與維護(hù)215.1 軟件調(diào)試215.1.1 軟件調(diào)試基礎(chǔ)215.1.2 軟件調(diào)試215.2 軟件維護(hù)215.2.1 軟件維護(hù)215.2.2 數(shù)據(jù)庫維護(hù)21結(jié) 論22致 謝23參考文獻(xiàn)24附 錄25引 言現(xiàn)在的網(wǎng)吧已經(jīng)進(jìn)入“毛利潤”時期,還是想靠每小時的上網(wǎng)費是不夠的,增值利潤已經(jīng)成為網(wǎng)吧不可缺少的收入,這就需要在網(wǎng)吧銷售商品來獲取利潤。用一句比較時髦的話來說,是開始做多元化經(jīng)營。多元化經(jīng)營原本是企業(yè)運營的一種戰(zhàn)略選擇,拿到網(wǎng)吧來講,就是為了方便上網(wǎng)顧客,為其提供點卡、充值、飲料、食品等方面的服務(wù)。網(wǎng)吧給人們提供了一個開放而舒適的上網(wǎng)環(huán)境,人們可以長時間的呆在網(wǎng)吧里面聊天,
12、沖浪,打游戲,學(xué)習(xí)。精神食糧是有了,可是物質(zhì)食糧卻極度缺乏,饑腸轆轆又怎么能安心上網(wǎng)呢?而目前大多數(shù)網(wǎng)吧只提供一些礦泉水,并不能解決顧客這方面的問題。倘若網(wǎng)吧在提供上網(wǎng)的同時可以有一些食品和飲料銷售的話,不僅可以讓顧客上的安心,玩的開心,還可以增加數(shù)量可觀的額外收入,同時舒適而貼心的上網(wǎng)環(huán)境又可以吸引更多的顧客,真是一舉兩得。分布式網(wǎng)吧商品銷售系統(tǒng)就是為了配合這一市場需求而開發(fā)的軟件,簡單易用體貼用戶是本系統(tǒng)的主要特點。上網(wǎng)的顧客只需點一下懸浮在桌面上的按鈕就可以挑選自己需要的商品,發(fā)出請求后服務(wù)器即可收到信息,把商品送到,絕對方便快捷。第一章 開發(fā)環(huán)境1.1 開發(fā)運行環(huán)境方案所采用micro
13、soft visual studio 2005 c# 開發(fā)工具進(jìn)行開發(fā),開發(fā)c/s結(jié)構(gòu)的系統(tǒng),使用socket局域網(wǎng)通信技術(shù) server sql 2000數(shù)據(jù)庫,版本8.00.2039(升級可以打sql sp4補丁),系統(tǒng)環(huán)境microsoft windows xp professional service pack 3。1.1.1 c# 開發(fā)簡介c sharp(又被簡稱為c#)是微軟公司在2000年六月發(fā)布的一種新的編程語言,并定于在微軟職業(yè)開發(fā)者論壇(pdc)上登臺亮相.c#是微軟公司研究員anders hejlsberg的最新成果.c#看起來與java有著驚人的相似;它包括了諸如單一繼
14、承,界面,與java幾乎同樣的語法,和編譯成中間代碼再運行的過程.但是c#與java有著明顯的不同,它借鑒了delphi的一個特點,與com(組件對象模型)是直接集成的,而且它是微軟公司.net windows網(wǎng)絡(luò)框架的主角。 在本文中,我將考察創(chuàng)建一種新計算機(jī)語言的一般動機(jī),并將特別指明是什么原因?qū)е铝薱#的出現(xiàn).然后我將介紹c#和它與java,c,c+的相似之處.其次我將討論一些存在于java和c#之間的高層次的,和基礎(chǔ)的差別.我將以衡量在用多種語言開發(fā)大型應(yīng)用程序的時候所需的知識(或者對這種知識的缺乏程度)來結(jié)束本文,而這正是.net和c#的一個主要戰(zhàn)略.目前,c#和.net還只能以c#
15、語言規(guī)則,以及windows 2000的一個d預(yù)覽版本,還有msdn上迅速增多的文檔集子的形式獲得(還沒有最終定型)。1.1.2 c/s結(jié)構(gòu)在網(wǎng)絡(luò)連接模式中,除對等網(wǎng)外,還有另一種形式的網(wǎng)絡(luò),即客戶機(jī)/服務(wù)器網(wǎng),client/server。在客戶機(jī)/服務(wù)器網(wǎng)絡(luò)中,服務(wù)器是網(wǎng)絡(luò)的核心,而客戶機(jī)是網(wǎng)絡(luò)的基礎(chǔ),客戶機(jī)依靠服務(wù)器獲得所需要的網(wǎng)絡(luò)資源,而服務(wù)器為客戶機(jī)提供網(wǎng)絡(luò)必須的資源。 這里客戶和服務(wù)器都是指通信中所涉及的兩個應(yīng)用進(jìn)程(軟件)。使用計算機(jī)的人是計算機(jī)的“用戶”(user)而不是“客戶”(client)。但在許多國外文獻(xiàn)中,也經(jīng)常把運行客戶程序的機(jī)器稱為client(這種情況下也可把cl
16、ient譯為“客戶機(jī)”),把運行服務(wù)器程序的機(jī)器稱為server。所以有時要根據(jù)上下文判斷client與server是指軟件還是硬件。 它是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢,將任務(wù)合理分配到 client端和server端來實現(xiàn),降低了系統(tǒng)的通訊開銷。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是client/server形式的兩層結(jié)構(gòu),由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的web應(yīng)用發(fā)展,web和client/server 應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件;因此,內(nèi)部的和外部的用戶都可以訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),通過現(xiàn)有應(yīng)用系統(tǒng)中的邏輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。這也就是
17、目前應(yīng)用系統(tǒng)的發(fā)展方向。應(yīng)用服務(wù)器運行數(shù)據(jù)負(fù)荷較輕。最簡單的c/s體系結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用由兩部分組成,即客戶應(yīng)用程序和數(shù)據(jù)庫服務(wù)器程序。二者可分別稱為前臺程序與后臺程序。運行數(shù)據(jù)庫服務(wù)器程序的機(jī)器,也稱為應(yīng)用服務(wù)器。一旦服務(wù)器程序被啟動,就隨時等待響應(yīng)客戶程序發(fā)來的請求;客戶應(yīng)用程序運行在用戶自己的電腦上,對應(yīng)于數(shù)據(jù)庫服務(wù)器,可稱為客戶電腦,當(dāng)需要對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行任何操作時,客戶程序就自動地尋找服務(wù)器程序,并向其發(fā)出請求,服務(wù)器程序根據(jù)預(yù)定的規(guī)則作出應(yīng)答,送回結(jié)果,應(yīng)用服務(wù)器運行數(shù)據(jù)負(fù)荷較輕。數(shù)據(jù)的儲存管理功能較為透明。在數(shù)據(jù)庫應(yīng)用中,數(shù)據(jù)的儲存管理功能,是由服務(wù)器程序和客戶應(yīng)用程序分別獨立
18、進(jìn)行的,前臺應(yīng)用可以違反的規(guī)則,并且通常把那些不同的(不管是已知還是未知的)運行數(shù)據(jù),在服務(wù)器程序中不集中實現(xiàn),例如訪問者的權(quán)限,編號可以重復(fù)、必須有客戶才能建立定單這樣的規(guī)則。所有這些,對于工作在前臺程序上的最終用戶,是“透明”的,他們無須過問(通常也無法干涉)背后的過程,就可以完成自己的一切工作。在客戶服務(wù)器架構(gòu)的應(yīng)用中,前臺程序不是非?!笆菪 保闊┑氖虑槎冀唤o了服務(wù)器和網(wǎng)絡(luò)。在c/s體系的下,數(shù)據(jù)庫不能真正成為公共、專業(yè)化的倉庫,它受到獨立的專門管理。1.1.3 sql 2000sql server是微軟公司開發(fā)的數(shù)據(jù)庫產(chǎn)品,sql server 2000被廣泛使用,很多電子商務(wù)網(wǎng)站、
19、企業(yè)內(nèi)部信息化平臺等都是基于sql server產(chǎn)品上。 今天的商業(yè)環(huán)境要求不同類型的數(shù)據(jù)庫解決方案。性能、可伸縮性及可靠性是基本要求,而進(jìn)入市場時間也非常關(guān)鍵。除這些核心企業(yè)品質(zhì)外,sql server 2000 還為您的數(shù)據(jù)管理與分析帶來了靈活性,允許單位在快速變化的環(huán)境中從容響應(yīng),。sql server 2000 為快速開發(fā)新一代企業(yè)級商業(yè)應(yīng)用程序、為企業(yè)贏得核心競爭優(yōu)勢打開了勝利之門。sql server 2000 提供了以 web 標(biāo)準(zhǔn)為基礎(chǔ)的擴(kuò)展數(shù)據(jù)庫編程功能。豐富的 xml 和 internet 標(biāo)準(zhǔn)支持允許您使用內(nèi)置的存儲過程以 xml 格式輕松存儲和檢索數(shù)據(jù)。您還可以使用 x
20、ml 更新程序容易地插入、更新和刪除數(shù)據(jù)。通過 web 輕松訪問數(shù)據(jù)。有了 sql server 2000,您可以使用 http 來向數(shù)據(jù)庫發(fā)送查詢、對數(shù)據(jù)庫中存儲的文檔執(zhí)行全文搜索、以及通過 web 進(jìn)行自然語言查詢。強大而靈活的基于 web 的分析。sql server 2000 分析服務(wù)功能被擴(kuò)展到了 internet。您可以通過 web 瀏覽器來訪問和控制多維數(shù)據(jù)。高度的可伸縮性和可靠性。使用 sql server 2000 可以獲得非凡的可伸縮性和可靠性。通過向上伸縮和向外擴(kuò)展的能力,sql server 滿足了苛刻的電子商務(wù)和企業(yè)應(yīng)用程序要求。1.1.4 socketsocket
21、接口是訪問 internet 使用的最廣泛的方法。 如果你有一臺剛配好tcp/ip協(xié)議的主機(jī),其ip地址是01, 此時在另一臺主機(jī)或同一臺主機(jī)上執(zhí)行ftp 01,顯然無法建立連接。因01 這臺主機(jī)沒有運行ftp服務(wù)軟件。同樣, 在另一臺或同一臺主機(jī)上運行瀏覽軟件 如netscape,輸入01,也無法建立連接。現(xiàn)在,如果在這臺主機(jī)上運行一個ftp服務(wù)軟件(該軟件將打開一個socket, 并將其綁定到21端口),再在這臺主機(jī)上運行一個web 服務(wù)軟件(該軟件將打開另一個socket,
22、并將其綁定到80端口)。這樣,在另一臺主機(jī)或同一臺主機(jī)上執(zhí)行ftp 01,ftp客戶軟件將通過21端口來呼叫主機(jī)上由ftp 服務(wù)軟件提供的socket,與其建立連接并對話。而在netscape中輸入01時,將通過80端口來呼叫主機(jī)上由web服務(wù)軟件提供的socket,與其建 立連接并對話。第二章 系統(tǒng)結(jié)構(gòu)及需求分析2.1 系統(tǒng)需求分析本系統(tǒng)有一個較好的展示平臺,不僅對網(wǎng)吧各類商品進(jìn)行了分類,并且每一件商品都有相應(yīng)的圖片和較為詳細(xì)的介紹,方便客戶了解各類商品信息和價格。如果客戶有意購買我們的商品,可以通過系統(tǒng)發(fā)送信息購買。當(dāng)服務(wù)器端
23、接收到信息后由網(wǎng)管遞送商品并收現(xiàn)金結(jié)賬。2.2 系統(tǒng)構(gòu)架圖本系統(tǒng)分為客戶端和服務(wù)器端客戶端可以查看商品信息選擇商品,加入購物車,購買商品;服務(wù)器端可以添加刪除商品,查看商品,紀(jì)錄銷售紀(jì)錄分布式網(wǎng)吧銷售系統(tǒng)客戶端服務(wù)器端商品信息管理管理員信息管理銷售清單管理商品類別管理商品信息查看加入購物車購買圖2-1 系統(tǒng)構(gòu)架圖2.3主要功能及數(shù)據(jù)庫設(shè)計本系統(tǒng)主要功能:客戶端:點擊左面圖標(biāo)打開客戶系統(tǒng),瀏覽商品,選擇商品,加入購物車,點擊購買。服務(wù)器端:管理員登陸;添加商品分類,選著分類,添加商品信息??蛻魴C(jī)發(fā)出信息后,信息浮動提示,由網(wǎng)管遞送商品,收取現(xiàn)金后,返回服務(wù)器端結(jié)算,銷售記錄紀(jì)錄進(jìn)入數(shù)據(jù)庫,供查看
24、;管理員表管理員表用來存儲管理員信息,用作服務(wù)器端登陸;添加修改刪除商品信息,管理服務(wù)器端數(shù)據(jù);表2-1 admin字段名稱字段類型字段大小是否為空說明adminid自動編號長整型否編號adminnamevarchar50否賬號adminpassvarchar20否密碼adminxm文本50否管理員姓名商品信息表:商品信息表用來存儲商品信息,表2-2 goods字段名稱字段類型字段大小是否為空說明goodsid自動編號長整型否編號goodsnamevarchar50否商品名稱goodspricedouble否商品價格goodspicvarchar50否商品圖片goodsintrvarchar5
25、0是備注goodsinumint4否商品庫存購物車表:購物車表用來存儲添加進(jìn)購物車的商品表2-3 shop_car字段名稱字段類型字段大小是否為空說明sh_id自動編號長整型否編號sh_namevarchar50否商品名稱sh_pricedouble否商品價格sh_picvarchar50否商品圖片sh_numint4否商品數(shù)量商品類別表:商品類別表用來分類商品類別,方便顧客分類查看商品表2-4 goods_lb字段名稱字段類型字段大小是否為空說明id自動編號長整型否編號lb_namevarchar50否類別名稱銷售總表:銷售總表用來存儲銷售過的商品數(shù)量價錢信息表2-5 sell字段名稱字段類
26、型字段大小是否為空說明s_id自動編號長整型否銷售單號s_goodspricedouble否商品總價格s_goodsnumint4否商品總數(shù)量s_timedatatime否商品銷售時間s_peoplevarchar20否經(jīng)手人s_jiezangint4否是否結(jié)賬銷售明細(xì)表:銷售明細(xì)表用來存儲銷售過的商品詳細(xì)信息表2-6 sell_list字段名稱字段類型字段大小是否為空說明sel_id自動編號長整型否編號listidint4否銷售單號sel_goodsnamevarchar50否商品名稱sel_goodspricedouble否商品價格sel_goodsnumint50否商品數(shù)量第三章 系統(tǒng)設(shè)
27、計頁面及功能3.1 客戶端設(shè)計實現(xiàn)3.1.1 客戶端登陸客戶端是該系統(tǒng)直接展示給網(wǎng)吧上網(wǎng)用戶的界面,首先當(dāng)用戶打開客戶端是,會跳出一個類似登陸界面的的界面。如圖3-1圖3-1 客戶端登陸在第一個文本框輸入網(wǎng)吧服務(wù)器ip地址,一般默認(rèn)的會寫在文本框中,端口默認(rèn)為8000,這2項數(shù)據(jù)都是需要在客戶端與服務(wù)器端通信時使用的。3.1.2 客戶端登陸實現(xiàn)當(dāng)用戶點擊連接按鈕以后,系統(tǒng)會將ip地址和端口號發(fā)送到客戶端主頁面中去實現(xiàn)代碼 form1 f = new form1(); f.ipx = textbox1.text; f.portx =int.parse(textbox2.text.tostring
28、(); f.show(); this.hide(); 3.1.3客戶端主界面客戶端主界面可以查看商品或者根據(jù)類別查看所需要的商品,根據(jù)名字模糊搜索商品,顯示在商品列表中,當(dāng)進(jìn)入客戶端主界面的時候,程序會將之前該機(jī)器名字留下的購物車信息未發(fā)送的信息刪除。如圖3-2圖3-2 客戶端界面當(dāng)用戶在界面左上角的列表框選擇類別后,商品表就會顯示該類別下的商品。如圖 3-3圖 3-3 商品表 用戶也可以在文本框中輸入商品名字在查找單件商品商品表就會顯示該商品。如圖 3-4圖 3-4 商品表 在商品列表中選擇商品,會在列表下的文本框中顯示商品名稱,然后輸入商品數(shù)量,點擊加入購物車,就會在右邊的購物車列表中顯示
29、已經(jīng)訂購的商品。如圖3-5.3-6.如圖3-5 選擇商品加入購物車如圖3-6 選擇商品加入購物車當(dāng)選擇好購買的商品后,在下方下拉框中選擇要支付的金額或者自己輸入金額,點擊確定按鈕發(fā)送,或者當(dāng)用戶不想要的時候點擊取消購物,刪除訂購信息。3.1.4 客戶端主界面功能實現(xiàn) private delegate void settextbox(string s); private delegate void removelist(socket s); private settextbox setbox;socket s = new socket(addressfamily.internetwork, so
30、ckettype.stream, protocoltype.tcp);/定義一個socket s/發(fā)送到服務(wù)器代碼try sqlparameter paras2 = new sqlparameter1; paras20 = new sqlparameter(hname, sqldbtype.varchar, 50); paras20.value = system.net.dns.gethostname(); dataset ds2 = sqlhelper.executedataset(data source= + ipx + ;initial catalog=ebar;persist secu
31、rity info=false;user id=sa;password=;, commandtype.storedprocedure, dbo.sel_car1, paras2); sqlparameter paras3 = new sqlparameter1; paras30 = new sqlparameter(hname, sqldbtype.varchar, 50); paras30.value = system.net.dns.gethostname(); dataset ds3 = sqlhelper.executedataset(data source= + ipx + ;ini
32、tial catalog=ebar;persist security info=false;user id=sa;password=;, commandtype.storedprocedure, dbo.sum_car, paras3); string text=主機(jī)名稱: +system.net.dns.gethostname ( )+rn; for (int i = 0; i ds2.tables0.rows.count; i+) text += ds2.tables0.rowsi0.tostring() +數(shù)量:+ds2.tables0.rowsi2.tostring()+rn; tex
33、t += 總價格: + ds3.tables0.rows00.tostring()+ +支付面額: +combobox1.text; date = encoding.utf8.getbytes(text); s.beginsend(date, 0, date.length, socketflags.none, new asynccallback(check), s); messagebox.show(購買成功,請耐心等待); catch (exception ex) messagebox.show(服務(wù)器已關(guān)閉); private void check(iasyncresult iar) so
34、cket othersocket = (socket)iar.asyncstate; int len = othersocket.endsend(iar); if (len = date.length) this.invoke(setbox, new object 服務(wù)器發(fā)送: + encoding.utf8.getstring(date) ); else this.invoke(setbox, new object encoding.utf8.getstring(date) + 發(fā)送失?。?); try sqlparameter paras1 = new sqlparameter1; par
35、as10 = new sqlparameter(goodsname, sqldbtype.varchar, 20); paras10.value = tboxgoodsname.text; dataset ds1 = sqlhelper.executedataset(data source= + ipx + ;initial catalog=ebar;persist security info=false;user id=sa;password=;, commandtype.storedprocedure, dbo.sel_goodnum, paras1); int a, b; a = int
36、.parse(tboxnum.text.tostring().trim(); b = int.parse(ds1.tables0.rows05.tostring(); if (a b) sqlparameter paras = new sqlparameter5; paras0 = new sqlparameter(name, sqldbtype.varchar, 20); paras0.value = ds1.tables0.rows01.tostring(); paras1 = new sqlparameter(price, sqldbtype.decimal); paras1.value
37、 = ds1.tables0.rows02; paras2 = new sqlparameter(pic, sqldbtype.varchar, 50); paras2.value = ds1.tables0.rows03.tostring(); paras3 = new sqlparameter(num, sqldbtype.int); paras3.value = int.parse(tboxnum.text.tostring().trim(); paras4 = new sqlparameter(hname, sqldbtype.varchar, 50); paras4.value =
38、system.net.dns.gethostname(); dataset ds = sqlhelper.executedataset(data source= + ipx + ;initial catalog=ebar;persist security info=false;user id=sa;password=;, commandtype.storedprocedure, dbo.ins_car, paras); bindcar(); else messagebox.show(對不起,您購買的數(shù)量超出庫存); catch(exception ex) messagebox.show(請輸入
39、購買數(shù)量); /上面代碼用于判斷購買商品數(shù)量是否超出庫存量,超出就無法加入購物車。3.2 服務(wù)器端界面及功能實現(xiàn)3.2.1 服務(wù)器登陸服務(wù)器登陸。用于給網(wǎng)吧管理員登陸服務(wù)器端,管理商品,交易管理,查看報表。在文本框中輸入用戶名,密碼。點擊登陸,登陸后查找該賬號人名字并傳送值,如圖3-7圖 3-7 登陸界面3.2.2 服務(wù)器登陸功能實現(xiàn)sqlparameter paras = new sqlparameter1; paras0 = new sqlparameter(name, sqldbtype.varchar, 20); paras0.value = textbox1.text; datase
40、t ds = sqlhelper.executedataset(data source=.;initial catalog=ebar;persist security info=false;user id=sa;password=;, commandtype.storedprocedure, dbo.sel_admin, paras); if (ds.tables0.rows.count = 0) messagebox.show(登陸失敗,用戶名不正確); else if (textbox2.text = ds.tables0.rows02.tostring() messagebox.show
41、(登錄成功!); form1 f1 = new form1(); f1.admin = ds.tables0.rows03.tostring() ; f1.show(); this.hide(); else messagebox.show(密碼錯誤); 3.2.3 服務(wù)器主界面服務(wù)器主界面是網(wǎng)吧管理員可以查看哪臺客戶端發(fā)送購物信息過來,并且可以查看該用戶購物信息,進(jìn)行交易操作,亦可在主菜單上選擇希望的按鈕來進(jìn)行商品管理,交易信息查詢,管理員管理等。當(dāng)客戶端訂購?fù)晟唐罚⑶尹c擊發(fā)送后,服務(wù)器端的文本框中就顯示用戶購買的商品,數(shù)量,及價格,并且顯示購買人的ip地址和主機(jī)名稱。界面中的列表框則是顯示
42、當(dāng)前網(wǎng)吧用戶打開并連接主機(jī)的用戶ip和連接端口號。當(dāng)管理員登陸后,點擊右上角的啟動按鈕,即可啟動服務(wù)端,隨時接收客戶端發(fā)送的請求,并進(jìn)行交易操作。如圖3-8圖3-8 服務(wù)器主界面3.2.4 服務(wù)器主界面接收偵聽信息功能實現(xiàn)部分代碼如下:private void accept(iasyncresult iar) socket socket = (socket)iar.asyncstate; socket newsocket = socket.endaccept(iar); system.diagnostics.debug.writeline(newsocket.remoteendpoint.to
43、string() + + datetime.now.tostring(); this.invoke(setlistview, new object (ipendpoint)newsocket.remoteendpoint).address.tostring(), (ipendpoint)newsocket.remoteendpoint).port.tostring() ); m_list.add(newsocket); socket.beginaccept(new asynccallback(accept), socket); /if (tsmiauto.checked) try newsoc
44、ket.beginreceive(revdate, 0, 1024, socketflags.none, new asynccallback(receive), newsocket); /date = encoding.default.getbytes(hello world!); /newsocket.beginsend(date, 0, date.length, socketflags.none, new asynccallback(send), newsocket); catch (exception ex) system.diagnostics.debug.writeline(ex.m
45、essage); m_list.remove(newsocket); this.invoke(remove, new object newsocket ); /接收函數(shù)private void receive(iasyncresult iar) socket othersocket = (socket)iar.asyncstate; socket newsocket = d; try int len = othersocket.endsend(iar); if (len = 0) m_list.remove(othersocket); this.invoke(remove, new objec
46、t othersocket ); return; this.invoke(setbox, new object 服務(wù)器收到( + othersocket.remoteendpoint.tostring() + ): + encoding.utf8.getstring(revdate, 0, len) ); /date = new bytelen; /buffer.blockcopy(revdate, 0, date, 0, len); /newsocket.beginsend(revdate, 0, date.length, socketflags.none, new asynccallbac
47、k(send), newsocket); /revdate = new byte1024; array.clear(revdate, 0, len); othersocket.beginreceive(revdate, 0, 1024, socketflags.none, new asynccallback(receive), othersocket); catch (exception ex) m_list.remove(othersocket); this.invoke(remove, new object othersocket ); 由于之前完全沒有接觸過c/s構(gòu)架的系統(tǒng)設(shè)計制作,在網(wǎng)上找 了很多資料后才能稍微做出點類似的代碼。3.2.5 交易操作主界面最小化后隱藏到任務(wù)欄,當(dāng)服務(wù)器收到客戶端發(fā)來的信息后,主界面彈出,并且在文本框中顯示用戶的需求,價格,管理員點擊菜單欄的交易操作或者界面上
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 火燒云作業(yè)設(shè)計
- 2025屆邢臺市南宮市數(shù)學(xué)三年級第一學(xué)期期末教學(xué)質(zhì)量檢測試題含解析
- 水利水電工程未來挑戰(zhàn)與機(jī)遇試題及答案
- 市政工程考試模擬題庫試題及答案
- 冷飲小商店課件
- 2025年工程項目管理的重要試題與答案
- 禁煙與安全教育主題班會
- 簡述行政協(xié)議的概念與特征
- 2025年經(jīng)濟(jì)師考題分析中級經(jīng)濟(jì)師試題及答案
- 外派工作經(jīng)歷與能力鑒定證明(5篇)
- 醫(yī)院建筑設(shè)計重點、難點分析及應(yīng)對措施
- 運用精益管理(TPS)縮短醫(yī)院門診患者就診時間醫(yī)院品質(zhì)管理成果匯報
- 環(huán)保行業(yè)人才培養(yǎng)機(jī)制方案
- 專題18 熱學(xué)-五年(2020-2024)高考物理真題分類匯編(解析版)
- 十二生肖調(diào)查報告
- 健身塑形瑜伽學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 2024-2025年遼寧省面試真題
- 2024年高考真題-地理(河北卷) 含答案
- 單位駕駛員勞務(wù)派遣投標(biāo)方案投標(biāo)文件(技術(shù)方案)
- 資本經(jīng)營-終結(jié)性考試-國開(SC)-參考資料
- 2024年浙江省中考科學(xué)試卷
評論
0/150
提交評論