网学网为广大网友收集整理了,基于ASP订单管理系统的设计与实现,希望对大家有所帮助!
客服咨询,网学网竭诚为您服务,本站永久域名:myeducs.cn |
4.3 系统功能模块描述 4.3.1客户端首页(Home.asp) (1)页面示例 图4-2是订单管理系统的客户端首页。整个页面分为frame,左边的frame提供用户的操作选项,右边的frame显示系统的帮助信息。当用户单击某个选项时,右边的转到相应的asp页面。 图4-2 在线订购首页 (2)实现方法:所实现的页面分为两个子页面left.asp和main.asp,只要在一个页面中用两个frame就可以,主要的代码如下: <html> <head> <title>在线购物系统</title> <meta http-equiv=”Content-Type” content=”text/html,charsct=gb2312”> </head> <frameset frameborder=”NO” border=”0” framespacing=”0” rows=”*”> <frame name=”leftFrame” scrolling=”yes” src=”left.asp”> <frame name=”mainFrame” src=”main.asp”> </frameset> <noframes><body bgcolor=”#ffffff”> </body></noframes> </html> 4.3.2 新用户注册页面(newuser.asp) (1)页面示例: 新用户注册页面提供用户注册功能,当用户在订单系统客户端首页选中“新用户注册”一项时,进如该页面。如图4-3所示。 图4-3 新用户注册页面 (2实现方法: 当用户填写表单完成后,首先把填写的结果交给指定程序检查,如果填写结果合法,则将表单内容交给adduser.asp页面,负责将用户信息写入数据库中。 在代码段newuser.asp中,描述了一个form,名称是ADDUser,根据语句“form name= “ADDUser” method=”POST” action=”adduser.asp” onSubmit=”return CheckForm();””可以得到,当用户单击“注册”按钮时首先由Vbscript的过程checkForm()检查用户输入是否合法,如果合法,则将输入结果提交到adduser.asp页面处理。 在adduser.asp页面中,首先进行安全监测,看数据来源是否是本服务器页面。接下来要做的就是从调教表单返回值,如下语句所示: username=request.form("username") Password=request.form("Password") Email=request.form("Email") Oicq=request.form("Oicq") userfrom=request.form("userfrom") telphone=request.form("telphone") 然后开始向数据库写入数据,并检测是否已经有该用户。这里利用ADO组件访问数据库,首先用“set rs=Server.CreateObject("ADODB.Recordset")” 创建数据库对象,然后用“sql="SELECT*FROM user wher username=''" & username & "''"检查用户是否存在。注册通过后,根据用户所在页面不同有两种情况: a、用户在订单系统首页注册,则将SESSION导至main.asp。 b、未登陆用户在购物完成后提示进行注册,如图4-4所示,则将SESSION导至 check.asp,即查看购物清单。 图4-4 未登陆用户在购物完成之后被提示进行注册页面 newuser.asp和adduser.asp的代码见附录。 4.3.3 用户登录页面(userlogin.asp) (1)页面示例: 当用户在系统首页上单击“用户登录”,出现如图4-5所示的页面。 图4-5 用户登录页面 (2)实现方法: 用户登录界面的主要功能是: a、已注册用户输入用户名和密码,转入到userlogin.asp. b、未注册用户单击“您没有注册?”,转入到newuser.asp. Userlogin.asp的功能是检查用户和密码,如果都是合法则通过登录验证,否则转到错误输出页面error.asp. Userlogin.asp的代码首先建立数据库组件对象,然后根据用户名查询,主要语句: sql = "SELECT top 1 username,password,sumjifen FROM user where Username=''" & Username & "''" 如果遍历整个用户信息数据表(user表)都找不到与用户名相对的行,说明该用户不存在,如语句: Set rs=Server.CreateObject("ADODB.RecordSet") rs.open sql,conn,1,1 if rs.bof or rs.eof then response.redirect "error.asp?error=003" 所示,转到error.asp页面,如图4-6所示: 图4-6 用户不存在时提示页面 userlogin.asp的代码见附录。 4.3.4 购物页面(main.asp) (1)页面示例: 当用户在系统首页上单击任何一种商品,都会出现如图4-7所示的购物页面.购物页面的功能是用户选择想要订购的商品,并能随时查看购物车。当用户“查看购物车”或“放入购物车”按钮时,进入如图4-8所示的商品清单页面(check.asp).当用户确认订购信息后,单击“开始支付”按钮,进入如图4-9所示的支付订单提交页面(payment.asp).最后出现的 是执行支付的页面(dopayment.asp),如图4-10所示。 图4-7 购物页面 图4-8 商品清单 图4-9 支付订单提交页面 图4-10执行网上支付的页面 (2)实现方法: 当用户开始购物时,就进入了main.asp。main.asp 实现的主要功能是显示用户所选择商品的信息,我采用的方法是数据库的遍历。如main.asp代码所示,首先查看所选的商品类型在商品明细数据表(subs表)中是否存在,如果存在则遍历所有类型为此的商品,这里采用循环的方式遍历数据库。由于ADO数据库组件所生成的数据集SET对象r记录了所得数据行的数目,所以可以使用for循环的方式(for ii=1 to rs1.recordcount)顺序显示出每条商品记录的属性名称、价格、货号和用户购物标记等。 在显示商品记录的过程中,用r.movenext得到下一条数据记录。当用户单击货号或名称时进入showsub.asp页面,显示该商品的一些属性,如下面的代码所示: <a href=”showsubs.asp?subsid=<%=rs1(“subs”)%>”target=”target”> main.asp的代码见附录。 当用户在main.asp页面中单击“查看购物车”按钮,进入check.asp页面。显示用户选购的所有商品。 在check.asp代码中,这里用productList来记录当前用户所选购的所有商品。ProductList是一个字符串,其中依次存放每个商品名称。在check.asp开头的一段Vbscript实现的功能就是把商品加入到 ProductList中: <% Sub PutToShopBag( bookbm, ProductList ) If Len(ProductList) = 0 Then ProductList = "''" & bookbm & "''" ElseIf InStr( ProductList, bookbm ) <= 0 Then ProductList = ProductList & ", ''" & bookbm & "''" End If End Sub %> 在check.asp中的遍历数据库方式是while循环:“While Not rs.EOF”。循环体中,首先判断用户的商品数量是否正确,如果小于0,则默认数量为1;然后,根据商品单价和数量计算所选商品的总金额(“sum=sum+csng(rs(“price”))*quatity”);最后显示商品信息。 Check.asp的代码见附录 。 如果用户想进行订单填写,单击“开始支付”进入payment.asp.payment.asp功能就是显示最终购物清单,并要求用户填写定单表格。显示部分与check.asp里的完全相同。另外,还需要一个VBScript来检查填写的格式是否正确。当用户单击“确定”按钮后,进入支付最后一个环节——dopayment.asp页面。 Dopayment.asp的代码见附录。 |
本站发布的计算机毕业设计均是完整无错的全套作品,包含开题报告+程序+论文+源代码+翻译+答辩稿PPT |
本文选自计算机毕业设计http://myeducs.cn |