《毕业设计网上订餐系统的设计与实现—论文.doc》由会员分享,可在线阅读,更多相关《毕业设计网上订餐系统的设计与实现—论文.doc(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、毕业设计(论文)网上订餐系统的设计与实现论文作者姓名:申请学位专业:申请学位类别:指导教师姓名(职称):论文提交日期:网上订餐系统的设计与实现摘 要越来越多的人接受了电子商务这种便捷、快速的交易形式,网上订餐的推出也很快受到了大家的欢迎。首先,简要地介绍了国内网络技术和信息产业的发展情况以及研究课题的现状,阐述了网上订餐系统的解决方案以及实施的重要意义。然后是建设网上订餐系统,具体分析如何实现系统功能,规划系统流程,设计系统数据库的逻辑结构,介绍在开发系统过程中所使用的重要开发语言、开发工具、配套插件以及开发平台。最后设计和实现了一个B/S结构的网上订餐系统,着重论述了系统的功能与实现、数据流
2、程及存储。包括会员管理、菜品信息介绍、网上订餐、用户留言、系统用户管理以及后台数据库管理等,使用图文并茂(功能代码及截图)的方式,对整个网上订餐系统功能模块的实现方法进行阐述和分析。关键词:数据库;网上订餐系统;ASPThe Design and Implementation of On-line Meal Ordering SystemAbstractMore and more people have accepted the convenient and fast transaction form of the electronic commerce, the on-line meal o
3、rdering is also become popular. First, we briefly introduce the domestic network technology and the information industries situation as well as the research situation, elaborate the solution of on-line meal ordering system as well as its significance. Next, we analysis how to implement this system f
4、unction, plan system flow and design the logical organization of system database, introduce the development language, the development kit, and the necessary plug-in units which are used in the development process as well as development of platform. Finally, the on-line meal ordering system of the B/
5、S structure is designed and implemented, it emphatically elaborates the function and implementation of system, data flow and storage such as the member management, information introduction of order, the on-line meal ordering, user information, system user management as well as the administration of
6、backstage database. We elaborate and analyze the entire implementation methods of the on-line meal ordering system function module with function code and pictures.Key words: Database;On-line meal ordering system;ASP目录论文总页数:23页1引 言11.1网上订餐的市场趋势11.2网上订餐的市场优势12系统开发技术介绍22.1系统开发语言22.1.1开发语言-ASP22.1.2开发语言
7、-HTML32.1.3开发语言-VBScript32.1.4开发语言-JavaScript42.2系统开发工具及插件42.2.1开发工具-Access42.2.2开发工具-Dream weaver MX42.2.3开发工具-IIS52.2.4开发插件-LyfUpload53系统总体设计53.1需求分析53.2系统功能图63.3系统数据逻辑结构74系统功能模块分析94.1前台功能模块分析94.1.1数据库连接94.1.2菜品图片浏览114.1.3订单填写124.1.4在线留言144.2后台功能模块分析164.2.1添加菜单164.2.2菜单管理184.2.3查看回复留言19结 论20参考文献21
8、致 谢22声 明23引 言高新科技和计算机的飞速发展,给人们带来了更多的便利电脑普及时代即将到来,网络技术也在逐渐完善,人们的生活已经开始发生重要的变革,效率已经成为各个企业生存的首要条件,更好更快的使用和了解相关的信息,以及处理更多更繁琐的事物便是我们设计网上购物系统的初衷。由于互联网发展已深入家庭,网上订餐这个课题已经提出,为了方便人们生活,提高人们的生活效率,本系统根据现实订餐的方式虚拟于网络之上,使人们通过网络就可以完成生活中必要的事情(饮食)。系统的完成不仅可以基本实现客户订餐的功能,还能在此基础上提供更多的,更贴心的服务。信息技术的发展将更快的推动互联网的发展,订餐系统的重要性也将
9、越显其强大的作用。1.1 网上订餐的市场趋势随着越来越多的人接受了电子商务这种便捷、快速的交易形式,网上订餐的顺势而出很快受到了大家的欢迎。互联网的应用以普及千家万户,这为网络订餐提供了良好的发展空间。同时,网上订餐服务的直观、有效、便捷等优点是传统的 订餐业务无法比拟的。调查数据显示,北京白领更乐于选择网上订餐服务, 网上订餐将是白领一族捕获餐店信息、进行订餐的发展趋势。网络订餐随着互联网的成长会逐渐被人们所喜爱,正如几年前 移动的短信一样,为企业带来的几百个亿的业务收入。在互联网世界里面,谁早一步在应用上创新,谁就掌握了未来的方向,品牌更是一炮打红,网络订餐,看到希望的是希望,看到泡沫的是
10、泡沫。1.2 网上订餐的市场优势网络订餐可充通过色彩、图片、说明、设置动画加强了产品了宣传,大大达到了餐饮业的“色型”要求。实现产品管理方便,起到立竿见影的效果,不用因为更改菜色而重新印刷。只要在后台鼠标轻轻一点,全线马上更新。采用B/S模式,订餐者无须安装第三方软件,能上网就能订餐,甚至可以利用 上网订餐,使操作更加简便,订餐信息更加准确。避免口头传递信息的错误,优化服务。网络不会跟 一样占线,在高峰期对订餐的处理更是游刃有余,只看着屏幕点打印即可,就可下厨房配菜配送。地址永远不会丢失,是一个永远存在的电子菜单,甚至还可以通过我们的推广而让更多的客人认识,不用派人派宣传单,省去一笔宣传和人工
11、费用。订餐途径有了更好的改善,网络订餐成为 订餐又一有力补充,扩大客流,从而整体提高业务量。倡导了一种时尚,餐店的定位更是网络化,时尚化,具备更为勃勃的生机。缓解了食堂的拥挤的困境,为食堂提供更为轻松的环境。有时间的提前性,方便统筹安排,集中处理。采用会员制度,设立积分换赠送,营销手段更是利用得淋漓尽致。可以设立团体会员制,利用赠品或优惠,扩大市场份额。利用网页技术,展示本公司的精品,增强吸引力。详细介绍每一个产品,展现公司周到、细微的服务。容易形成品牌和连锁经营,即使没有合适的店面,主要配送队伍健全,一个店面,就可以做全市生意。订餐者省 费,实现双盈。提供了交流的平台,实现消费者可贵信息的反
12、馈和交流。方便统计和查询,分析经营来得更直接。企业创新,跟得上市场的需要。2 系统开发技术介绍2.1 系统开发语言2.1.1 开发语言-ASPActive Server Pages(ASP,活动服务器页面)就是一个编程环境,在其中,可以混合使用HTML、脚本语言以及组件来创建服务器端功能强大的Internet应用程序。如果你以前创建过一个站点,其中混合了HTML、脚本语言以及组件,你就可以在其中加入ASP程序代码。通过在HTML页面中加入脚本命令,你可以创建一个HTML用户界面,并且,还可以通过使用组件包含一些商业逻辑规则。组件可以被脚本程序调用,也可以由其他的组件调用。目前,Internet
13、上的许多基于Windows平台的Web站点已开始应用ASP来替换CGI。ASP是基于WEB的一种编程技术,可以说是CGI的一种。它可以完成以往CGI程序的所有功能,如计数器、留言簿、公告板、聊天室等等.ASP可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。而浏览者一点觉察不出来,就像为他专门制作的页面一样。使用各种各样的组件,ASP可以完成无比强大的功能。使用FileSystemObject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等等。有ADO(Active Database Object,动态数据库对象)的支持,ASP对数据库的操作非常得心应手。你甚至
14、可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。使用CDONTS(Collaboration Data Objects for NTS,NTS协作数据对象),可以发送、查看邮件,实现WEBMAIL的功能。结合WSH(Windows Scripting Host),可以实现对NT主机的管理,如NT用户管理、IIS虚拟主机设置、EXCHANGE邮箱设置等等,就像管理本地机一样方便。ASP工作流程图如下:浏览器要求下载的文件 协议文件下载Web服务器脚本引擎ADO对象数据库ODBC 管理器ODBC 驱动程序图2-1 ASP工作流程图2.1.2 开发语言-HTMLHTML(
15、Hyper Text Markup Language超文本标记语言)是一种用来制作超文本文档的简单标记语言。与常见的字处理文件不同,Web页以超文本标识语言编排格式。它能独立于各种操作系统平台(如UNIX,WINDOWS等)。HTML语言作为一种标识性的语言,是由一些特定符号和语法组成的,所以理解和掌握都是十分容易的。可以说,HTML语言在所有的计算机编程语言中是最简单易学的。 组成HTML的文档都是ASCII档,所以创建HTML文件十分简单,只需一个普通的字符编辑器即可。如 Windows中的记事本、写字板都可以使用。也可以采用专用的 HTML 编辑工具:如 CoffeeHTML、 Home
16、site、 HTMLedit Pro等工具,它们的特点是能够自动检查HTML文档中的语法错误并协助改正。由于有了图形化的HTML开发工具,使得学习HTML更加容易,可以先用它制作好网页,再在它附带的HTML代码编辑器在删去那些无用的代码,利用它的所见即所得特性,从而很快就能熟练地掌握HTML。2.1.3 开发语言-VBScriptVBScript程序语言是Microsoft公司将VB程序语言加以简化,使其较易学习,且完全以配合网页设计发展重点,除去了有安全性顾虑的指令,诸如读写删除文件或执行系统调用程序等,使设计者可安心地在Internet上传送。此外,又加上适合其他操作平台的可移植性,并大大
17、提升了执行效率,使得VBScript广受网页设计者的欢迎。VBScript脚本语言脚本是应用程序在网页上表达的语言,可以将脚本嵌入Web页中。通常脚本在服务器上运行,但也可以采用客户端和服务器端结合使用VBScript是ASP的默认脚本语言。2.1.4 开发语言-JavaScriptJavaScript是1995年由美国Netscape公司为Navigator2.0浏览器的应用而发明的。它是写在HTML文件中的一种基于对象和事件驱动并具有安全性能的脚本语言,当用户在客户端的浏览器中显示该网页时,浏览器就会执行JavaScript程序,让用户通过交互式的操作变换网页的显示内容,以实现HTML语言
18、所不能实现的一些功能。JavaScript是一种解释性的,用于客户端的,基于对象的一种程序开发语言。在系统的设计过程中可以通过它实现一些客户端的功能,以减轻服务器运行任务的压力,从而达到高效率的目的2.2 系统开发工具及插件2.2.1 开发工具-AccessAccess 数据库管理系统是Microsoft Office 套件的重要组成部分,适用于小型商务活动,用以存贮和管理商务活动所需要的数据。Access不仅是一个数据库,而且它具有强大的数据管理功能,它可以方 便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等。数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构
19、的)是一串文字或数字流。数据库中的数据可以是文字、图像、声音等。Access 数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。表(Table) 表是数据库的基本对象,是创建其他5种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。窗体(Form) 窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称表单。报表(Report) 报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。宏(Macro) 宏相当于
20、DOS中的批处理,用来自动执行一系列操作。Access列出了一些常用的操作供用户选择,使用起来十分方便。模块(Module) 模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。模块使用Visual Basic编程2.2.2 开发工具-Dream weaver MXMacromedia公司的Dream weaver自问世以来备受网页设计专业人士的青睐,被誉为“网页三剑客之一”。经过多年的改进,Macromedia公司又推出了新版本:MX系列的Dream weaver。Dream weaver MX主要负责网页版式设计,网页编辑制作。新版本中,它将Dream we
21、aver UltraDev的所有功能整合近来。2.2.3 开发工具-IISIIS是微软公司主推的Web服务器产品,最新版本的是Windows 2003里所包含的IIS6.0。IIS支持 ,FTP以及SMTP协议。IIS支持与语言无关的脚本编写和组件,完全支持VBScript,JavaScript脚本开发语言以及Java语言,也支持CGI和WinCGI,ISAPI扩展等。其响应性能很高,同时系统资源消耗相对比较少,IIS安装,管理和配置都比较简单。在IIS提供的服务器端脚本执行环境中,设计人员可以建立和运行动态的,交互的,高效的Web应用程序。2.2.4 开发插件-LyfUploadLyfUpl
22、oad 是个免费的ASP组件,遵从 RFC-1867 请求,它可以在ASP页面中接收客户端浏览器使用encType=multipart/form-data的Form上载的文件。 本版本支持单文件上载、多文件上载、限制文件大小上载、限制某一类型文件上载、文件上载到数据库、数据库中读取文件及文件上载重命名等功能。功能:(1)支持单文件上传 (1.2版支持上载文件覆盖判断功能);(2)支持上传多个文件;(3)可以将上传的文件改名保存(1.2版支持变量保存功能);(4)可以同时使用其它的form元素的信息;(5)支持限制文件上传的大小;(6)支持限制文件上传的类型 (1.1版修改,支持多文件类型)(1
23、.2版修正);(7)可以得到上传文件的大小 (1.1版新增功能);(8)支持将文件内容保存进数据库,如上载图形文件、DOC文件等各类Windows文件(1.1版新增功能);(9)支持从数据库中读取上载文件到数据库中的记录,如显示图形文件、DOC文件等各类Windows文件 (1.1版新增功能);(10)可以得到上传文件的MIME类型,如gif文件为images/gif(1.2版修正)。系统采用上传组件的主要目的就是为了实现在后台对商品图片的上传保存,以实现在前台用户在购买商品对商品有更深的了解。3 系统总体设计3.1 需求分析“民以食为天”,随着人民生活水平的提高,餐饮业在服务行业中占有越来越
24、重要的地位。努力在当前餐饮行业日趋激烈的竞争中脱颖而出,已成为每位餐饮业经营者 所追求的目标。网络订餐实现了小店面大作为的成本效益,解决了因为店面小的限制而无法提高营业额的难题,是一个小投入大成效的经营新模式。在网上参观订餐的人相对网下人来说还是比较少,一个是对网上餐馆的信用度持疑虑态度;另一个是网上订餐只可以看到物品的说明简介和外观,没有看到实体于细节处,无法通过快速浏览确定是不是自己想要的菜品。而这正是传统的实体餐馆优于网上餐馆的地方。而在网上订餐的人都是一般都是对电脑比较熟练的人,也就就是比较年青化的消费群体。就是白领、大学生、高中生和对计算机操作相对比较熟的人。因为这些人工作都比较忙,
25、而且对计算机也比较熟,思想也比较超前,对于在网上订餐能够接受,并经常上网订餐。3.2 系统功能图前台功能图(如图3-1)主要包括客户进入网站后进行的相应操作。首先,客户需要注册会员登录,如果不注册会员则不能进行订餐的下一步操作。其次,会员注册成功后,以会员身份登录网站,则可以进行会员信息修改,订单信息查询修改,网上订餐以及网站留言等功能。用户注册信息修改用户订餐注册用户功能模块定单查询、删除及修改附加功能图3-1前台功能图系统用户管理前台会员管理后台管理功能模块菜品类别设置网站新闻发布菜品信息管理图3-2后台功能图后台功能图(如图3-2)主要介绍系统管理员登录网站后台进行的相应操作。首先,管理
26、者需登录后台网站。其次,登录成功后,可进行系统用户管理、菜品类别设置、网站新闻发布、菜品信息管理等。订单及管理流程图(如图3-3)介绍了用户从开始订餐到网站后台管理者查看订单,实现送货,更改订单状态的整个过程,也是整个订餐系统的运作过程。下订单流程图: 订单管理流程图:开始选择菜品确定菜品信息确定用户信息提交定单开始处理定单修改定单状态派送菜品下订单结束前台用户登录后台用户登录验证信息结束图3-3订单及管理流程图3.3 系统数据逻辑结构表1 shopxp_admin(后台管理员)列名数据类型长度备注adminidInt4自动编号adminVarchar50管理员用户名PasswordVarch
27、ar50管理员密码功能介绍:记录后台管理员信息。用于管理员登录后台时进行数据调用。表2 dingfood(定单)列名数据类型长度备注idInt4自动编号yhmVarchar50用户名telsssVarchar50用户 addresssVarchar50用户地址hoursInt4时间(小时)minutesInt4时间(分钟)qtbzVarchar500备注信息zffsVarchar50付钱方式功能介绍:记录客户订单信息。记录客户姓名、联系方式、订餐付钱方式等。表3 huiyuanxinxi(前台客户信息)列名数据类型长度备注idInt4主键/编号NameVarchar50名字PasswordVa
28、rchar50密码SexVarchar50性别QuestionVarchar50密码提示AnswerVarchar50提示答案YearsVarchar50出生年份MonthsVarchar50出生月份DaysVarchar50出生日期AddressVarchar50住址EmileVarchar50邮箱TelVarchar50 VocationVarchar50行业professionVarchar50职位educationVarchar50教育程度IncomeVarchar50收入范围DatesSmalldatetime4注册时间typeint4会员种类功能介绍:记录客户信息。记录客户姓名、联
29、系方式、注册时间会员种类等。表4 prokind1(菜品分类大类)列名数据类型长度备注IdInt4主键/编号nameVarchar50分类类容CategoryorderInt4分类显示顺序功能介绍:记录菜品分类。表5 newskind (新闻分类)列名数据类型长度备注IdInt4主键/编号nameVarchar50分类类容CategoryorderInt4分类显示顺序功能介绍:记录新闻分类。表6 pro(菜品)列名数据类型长度备注idInt4主键/商品编号Prokind1Float8产品类别大类Prokind2Float8产品类别小类nameVarchar50名字jiageVarchar50价
30、格picsVarchar50图片小piclVarchar50图片大newcontentVarchar50新闻介绍ViewcongtInt4图片介绍adddateSmalldatetime4日期/时间teseVarchar501为新品,0为老菜品功能介绍:记录菜品信息。显示菜品新闻介绍、菜品类别以及相关图片。表7 news (新闻信息)列名数据类型长度备注IdInt4主键/编号newsnameVarchar50标题NewscontentVarchar50内容AddateVarchar50时间FromVarchar50来源AddnameVarchar50发布者NewskindInt4所属类别Viw
31、coutInt4浏览次数picint2图片是否有图功能介绍:记录新闻内容。显示新闻来源、发布时间以及相关图片。4 系统功能模块分析4.1 前台功能模块分析4.1.1 数据库连接专门独立一页面除了作为进行数据库连接功能的实现,同时写入系统常用的几个函数,其目的是方便以后其它页面的功能实现时能直接调用此页面,而不需反复写入代码,提高效率。函数的编写主要是利用了ASP内置几个重要函数来实现的。Conn_xt文件下包含两个页面。页面shopxt.asp:, >) fString = replace(fString, , <) fString = Replace(fString, CHR(3
32、2), ) fString = Replace(fString, CHR(9), ) fString = Replace(fString, CHR(34), ") fString = Replace(fString, CHR(39), ') fString = Replace(fString, CHR(13), ) fString = Replace(fString, CHR(10) & CHR(10), ) fString = Replace(fString, CHR(10), ) fString=ChkBadWords(fString) HTMLE
33、ncode = fStringelse HTMLEncode=fstringend ifend functionRem 过滤SQL非法字符function checkStr(str)if isnull(str) thencheckStr = exit function end ifcheckStr=replace(str,)end functionRem 判断字符是否是整型function isInteger(para) on error resume next dim str dim l,i if isNUll(para) then isInteger=false exit function
34、 end if str=cstr(para) if trim(str)= then isInteger=false exit function end if l=len(str) for i=1 to l if mid(str,i,1)9 or mid(str,i,1)0 then isInteger=false exit function end if next isInteger=true if err.number0 then err.clearend function%4.1.2 菜品图片浏览用户可直接在主页面查看菜品信息包括菜品图示以及价格。操作简单只需将鼠标放在菜名上即可显示菜品图
35、示。浏览方便,特色性强。采用JavaScript语言编写。在网上搜索代码嵌入页面使用。如图4-1所示。图4-1 菜单浏览页面 4.1.3 订单填写订单是用户管理自己在网站订餐的一个模块,此功能在这里不仅给用户提供了查看自己的订餐,还提供了自动计算功能。如图42所示。图4-2 订单菜单页面 dingcan.asp:function subm() if(!checkDate()return; var str = 您的订单如下:nn-nn; var ts = ; var allN = 0;for(var i =0;i 0) ts += +form3(i-2).value+ +form3(i-1).v
36、alue+元 X +form3(i).value+份=+(form3(i-1).value*form3(i).value)+元 nn allN += (form3(i-1).value*form3(i).value); str += ts + -nn总计: +allN+元;str += nn送餐时间:+form3.hours.value+点+form3.minutes.value+分;if(ts = )return alertif(confirm(str) form3.list.value = ts; form3.list1.value = allN form3.submit(); 查看订单状
37、态:此功能为会员所特有,只有会员登陆后才能查看订单信息。如图43所示。图4-3 查看订单网页:ckdd.asp 4.1.4 在线留言在网站建设初期,针对所有用户开放留言区,用户可以提出对菜品信息、如何送货以及对网站建设的任何问题。在网站正式步入轨道后将改为只针对会员开放。如图44所示。图4-4 用户留言页面网页:liuyan.asp主要介绍分页代码:Const MaxPerPage=10 dim totalPut dim CurrentPage dim TotalPages dim j dim sql if Not isempty(request(page) then currentPage=
38、Cint(request(page) else currentPage=1 end if if currentpagetotalput then if (totalPut mod MaxPerPage)=0 then currentpage= totalPut MaxPerPage else currentpage= totalPut MaxPerPage + 1 end if end if 检查留言信息是否填完整:图4-5 查看留言填写完整页面:liuyan1.asp%ifrequest.Form(name)=orrequest.Form(email)=or request.Form(tex
39、tarea)= thenresponse.Write(alert(请填写完整!);location.href=liuyan.asp)response.end()end ifnames=request.Form(name)email=request.Form(email)title=request.Form(title)textarea=request.Form(textarea)exec=select * from liuyanset rs=server.createobject(adodb.recordset)rs.open exec,conn,2,3rs.addnewrs(name)=na
40、mesrs(email)=emailrs(title)=titlers(content)=textarears(adddate)=now()rs.updaters.closeresponse.Write(alert(多谢支持!);location.href=liuyan.asp)set rs=nothingconn.closeset conn=nothing%4.2 后台功能模块分析4.2.1 添加菜单页面除了添加菜单的基本窗口,还使用了2个插件来完善添加菜单详细信息:一个是上传组件,目的是实现菜单图片的上传;还有一个就是详细说明的编辑,每个菜单都需要细节的介绍,此插件提供了类似于具有办公软件的功能的编辑窗口。页面 Addpro.asp:首先页面利用对象Session来实现对后台管理员的身份和权限的控制,再通过对数据库的连接,实现二个功能:一个功能是获取页面Addpro.asp所提交的商品相关信息,并插入到数据库相应的表里;再一个是对提交商品的更新信息来刷新数据库,完成对商品信息的编辑,如图4-6所示。页面 addpro.asp/将里面的链接换成本地链接aa=