ASP动态网站课程设计指导书(适用于计算机应用技术专业)计算机工程系2007.101目录一、实训目标…………………………………………………………2二、实训方式与时间安排……………………………………………2三、实训考核方法和标准……………………………………………2四、实训内容…………………………………………………………4(一)设计目标……………………………………………………4(二)设计思想……………………………………………………4(三)系统功能模块流程图………………………………………5(四)设计过程……………………………………………………5(五)注意事项…………………………………………………302一、实训目标通过学期末安排的实训项目,让学生达到掌握开发ASP程序的基础知识和基本方法,对网络程序设计有一个全面的认识和了解,并能够独立自主开发留言板、BBS、聊天室等网络应用程序。二、实训方式与时间安排设计顺序学时(天)设计内容1.准备阶段2设计动员,选择设计题目,进行程序需求分析,确定设计目标和设计思想2.设计阶段5数据库设计、页面设计、功能实现3.调试阶段2调试修改,检查实训效果4.编写报告1编写课程设计说明书三、实训考核方法和标准(一)考核方法指导教师应根据学生实训期间的学习态度,学生在小组中所承担任务的份量和质量,对所学内容的掌握程度,所编写课程设计说明书的质量进行综合评分,特别提倡独立开发创新意识,如果能在完成基本要求的基础上,能够补充并完善本程序的功能,则给与加分,按优秀、良好、中等、及格、不及格五级评定成绩。(二)考核标准3优秀:能很好地完成实训任务,达到大纲中规定的全部要求,课程设计说明书能对实训内容进行全面、系统的总结,并能运用学过的理论知识对某些问题加以分析。在考核时比较圆满地回答问题、并有某些独到见解。实训态度端正,实训期间无违纪行为。良好:能较好地完成实训任务,达到大纲中规定的全部要求。课程设计说明书能对实训内容进行全面、系统的总结。考核时比较圆满地回答问题。实训态度端正,实训期间无违纪行为。中等:能完成大部分实训任务,达到大纲中规定的主要要求。课程设计说明书能对实训内容进行比较全面的总结。考核时能正确回答主要问题。实训态度端正,实训期间无违纪行为。合格:基本能完成大部分实训任务,但达不到大纲中规定的主要要求。课程设计说明书基本能对实训内容进行比较全面的总结。考核时基本能正确回答主要问题。实训态度基本端正,实训期间无违纪行为。不合格:不能完成大部分实训任务,达不到大纲中规定的主要要求。课程设计说明书不能对实训内容进行比较全面的总结。考核时不能正确回答主要问题。实训态度不够端正,实训期间有违纪行为。4四、实训内容---订单管理系统(一)设计目标本系统分为客户订购系统和管理员管理系统两部分,具体功能分析如下:⒈客户订购系统的主要功能要求:●用户可随时登录或注册,购物车中的商品不会丢失。●用户可以随时找回密码,密码可发送到其注册时候填写的信箱。●用户申诉功能,如果用户订单未被处理,可随时提出申述。●用户在最后支付时,可选择不同的支付方式,将看到不同的信息。●用户可使随时查看站务公告。⒉管理员管理系统的主要功能要求:●用户管理●订单管理●邮件管理●商品管理●其它管理部分●超级管理员可以添加普通管理员(二)设计思想⒈B/S结构即browser/server(浏览器/服务器)结构,主要应用了不断成熟的技术,结合浏览器的多种script语言和Activex5技术,节约了开发成本,成为但仅应用软件的首选体系结构。⒉三层结构的概念B/S的三层结构即把程序划分为三个部分:用户界面层:负责处理用户的输入和向用户的输出,但不负责解释含义,该层通常用前端工具开发。本系统用vbscript实现asp页面。商业逻辑层:建立实际的数据库连接,根据用户的请求生成sql语句检索或更新数据库,并把结果返回给客户端。数据库层:负责实际的数据库存储和检索。(三)系统功能模块流程图①:查看所有的定单;②:查看未执行完的定单(四)设计过程⒈数据库设计与实现⑴数据库的需求分析根据前面的系统功能分析,可以得到数据库由以下几部分组成:●用户信息会员登陆订单执行进度流程显示现有未执行完的订单选择其他订单跟踪操作加备注内容显示所有订单订单显示订单的详细内容参考订单的执行流程对未执行的订单加备注①②订单的详细内容6●管理员信息●订单信息●商品明晰信息●折扣信息●付款方式信息●电子邮件管理列表●公告栏内容⑵数据库逻辑设计列出以下数据项和结构:●用户信息:用户名,姓名、密码,所在省市,电子邮件,电话,住址,享受的打折比例,积分。●管理员信息:用户名,姓名,密码。●订单信息:用户名,订单号,时间,总金额,支付方式,交易是否已经完成,送货地点,电子邮件。●商品明细表:货号,商品子类,商品分类,数量,名称,价格,定购数量,说明,是否打包,图例,是否推荐。●折扣信息:折扣等级,折扣值,积分。●付款方式信息:付款方式,付款方式说明,时间,交易人姓名。●电子邮件管理列表:邮件主题,邮件内容,寄信人。●公告栏内容:标题,内容,发布时间,发布人姓名。⑶数据库的结构创建根据数据库需求分析,建立如下8个数据表:7图2-1系统用户信息表users表图2-2管理员信息表adminuser表图2-3订单信息数据库orders表8图2-4商品明细数据表subs表图2-5折扣信息数据表discount表其它的表照此去表示,本指导书略。⒉后台数据库的配置⑴选区合理的后台数据库从应用角度考虑,本系统采用了Access为后台,是因为它易于使用,在创建和配置上比sqlserver数据库容易。⑵注册系统数据源后台系统数据库的配置是通过ODBC数据源借口来实现。9⒊前端网络页面的设计与开发⑴订单管理系统客户端首页①页面示例如下图2-17是本系统运行时的客户端首页。②实现方法整个网页通过框架来实现的。分为两个frame,左边的frame(left.asp)提供用户的操作选项,右边的frame(main.asp)显示系统的帮助信息。当用户单击某个选项时,右边的frame会转到相应的asp叶面。具体实现:htmlheadtitle在线购物系统/titlemetahttp-equiv=Content-Typecontent=text/html;10charset=gb2312/headframesetcols=198,937*frameborder=NOborder=0framespacing=0rows=*framename=leftFramescrolling=yessrc=left.aspframename=mainFramesrc=main.asp/framesetnoframesbodybgcolor=#FFFFFF/body/noframes/html⑵新用户注册页面的设计与实现①页面示例该页面(newuser.asp)提供用户注册功能,当用户在首页选中“新用户注册“一项时,进入该页面,如图2-18所示:图2-18新用户注册页面11②实现方法当用户填写表单后,首先把填写的结果提交给指定程序检查,在本例中采用vbscript的形式检查填写结果的合法性。如果填写合法,则将表单内容交给adduser.asp页面,负责将用户信息写入数据库中。在newuser.asp中,描述了一个form,名称是adduser,根据语句formname=ADDUsermethod=POSTaction=adduser.asponSubmit=returnCheckForm();可知道,当用户单击“注册”按钮时首先由vbscript过程checkform()检查用户输入是否合法,如果合法,则将输入结果提交到adduser.asp页面处理。在adduser.asp中,首先进行安全性监测,看数据来源是否是本服务器页面。然后开始向数据库写入数据,并检测是否已有此用户。注册通过后,根据用户所在页面不同,有两种情况:●用户在订单系统首页注册,则将session导至main.asp,即回到首页。●未登陆用户在购物完成之后被提示进行注册,如图2-19所示,则将session导致check.asp,即查看购物清单。12图2-19位登陆用户在购物完成之后被提示进行注册出现的页面具体代码如下:newuser.asp的完整代码:!--#includefile=inc/userconn.inc--htmlheadtitle新用户注册/titlelinkrel=stylesheethref=inc/guhongying.csstype=text/css/headbodybgcolor=7C96B8leftmargin=0topmargin=0marginwidth=0marginheight=0scriptlanguage=JavaScriptfunctionCheckForm(){if(document.ADDUser.UserName.value.length==0){alert(请输入您的用户名.);document.ADDUser.UserName.focus();returnfalse;}if(document.ADDUser.UserName.value.indexOf()!=-1||13document.ADDUser.UserName.value.indexOf()!=-1){alert(用户名中不能包含(,));document.ADDUser.UserName.focus();returnfalse;}if(document.ADDUser.UserName.value.indexOf(')!=-1){alert(用户名中不能包含('));document.ADDUser.UserName.focus();returnfalse;}if(document.ADDUser.password.value.length==0){alert(请输入您的密码.);document.ADDUser.password.focus();returnfalse;}if(document.ADDUser.PW_Again.value.length==0){alert(请确认您的密码.);document.ADDUser.PW_Again.focus();returnfalse;}if(document.ADDUser.password.value!=document.ADDUser.PW_Again.value){alert(您两次输入的密码不一样!请重新输入.);document.ADDUser.password.focus();returnfalse;}if(document.ADDUser.Email.value.length==0){alert(请输入您的Email.);document.ADDUser.Email.focus();returnfalse;}if(document.ADDUser.Email.value.length0&&!document.ADDUser.Email.value.match(/^.+@.+$/)){alert(Email错误!请重新输入);document.ADDUser.Email.focus();returnfalse;}14if(document.ADDUser.telphone.value.length==0){alert(请输入您的联系电话,以便我们可以为您更好服务.);document.ADDUser.telphone.focus();returnfalse;}if(document.ADDUser.Oicq.value.length==0){alert(请输入您的QQ号码,以便我们可以为您更好服务.);document.ADDUser.Oicq.focus();returnf