此页面并不象其他模块中的页面那样通过框架嵌入到default.asp页中,而是在login.asp文件中包含head.asp和foot.asp两个文件。原因很简单,因为菜单是包含在default.asp上方的head区的,如果login.asp嵌入到default.asp的框架中的话,无法正确控制上方操作菜单的显示。
图6-10管理端登陆页面
Showadminlogin函数用来显示登陆表单,将这个函数放在adminbase.asp问家中的目的是为了减少login.asp文件的代码量,这样可以单独用dreamweaver来设计界面,然后只要用类似的函数调用或文件包含等方式功能代码加入到设计好的页面结构中即可,从而使得页面结构清晰,便于维护和更新。
在login.asp文件的头部调用的checkadminlogin过程也位于adminbase.asp文件中,它的作用是对以参数形式传入的用户名和密码进行校验,如果正确,则转向main.asp,进入后台管理系统,反之则有错误提示。
管理端用户登陆程序流程图如下图6-11所示:
图6-11管理端用户登陆程序流程图
2.注销页面
管理员注销页面logout.asp非常简单,只需要将session清空,然后转向客户端首页面即可。
6.2客户端界面设计
与管理端界面设计类似,客户端界面的设计也采用了界面模块化的思想,每个页面都具有一定的功能,且页面命名仍然采用"模块名+功能名"的方式。
6.2.1商品(手机)信息浏览模块
商品(手机)信息浏览模块的主要功能:显示商品预览列表(product.asp),
显示商品详细信息页面(productdetail.asp),存放商品基本函数(productbase.asp)。
商品既手机是顾客来到网站后所关心的第一件事,对于手机这类注重外形的商品,具备以缩略图方式预览手机的功能是非常必要的,另外还需要具备查询功能。
1.手机预览列表
在本系统中,手机预览列表与查询是用同一个页面完成的,既都是product.asp文件,在这个文件中,默认是显示全部商品,然后可以根据手机厂商和手机名称关键字来查看过滤后所显示的手机。
2.手机详细信息
手机详细信息对应的文件是productdetail.asp,图6-12是查看某一手机详细信息的页面。
查看手机详细信息是通过在productdetail.asp文件中调用如下语句实现的:
Callshowproduct(realstring(request.querystring("id")))
这里通过Request对象获得要查看手机的编号,然后作为参数传入Showproduct过程中,这个过程也位于productbase.asp文件中,它的实现原理是通过传入的产品编号组织SQL语句,从数据库中检索数据,然后将查到的结果显示出来,另外,由于这个页面用来显示大量文本,所以一定要用Convert函数对所显示的文本进行HTML编码和用HTML的换行符""替换字符串中的回车符,否则页面显示会很乱。
图6-12查看手机详细信息
6.2.2购物车管理模块设计
购物车管理模块的主要功能:显示购物车(shopcart.asp),购物车基本函数(cartbase.asp)。
购物车管理模块与订单维护模块类似,也是本系统的本质所在。本系统的目的就是用来销售,自然最感兴趣的就是顾客将商品放入购物车并提交订单。但实际上购物车管理模块从技术实现角度将并不复杂,与订单维护模块类似。
查看购物车用到的是shopcart.asp和cartbase.asp两个文件。图6-13是查看购物车的显示界面,从图中可以看出在购物车内可以存放多种商品,每种商品也可以购买多个。顾客利用购物车所提供的功能,可以更改所购买商品的数量或删除所购买的商品。
此页的原理是每次访问此页时,都会从Request对象和Querystring集合和Form集合中寻找以下三个参数:
(1)ProductID:要购买的商品编号,位于Querystring集合中,如果找不到,报错。
(2)Clear:是否清空购物车,位于Querystring集合中,只有当此参数为"Yes"
时才清空购物车。
(3)Modify:修改购物车,位于Form集合中,只有当此参数为"Yes"时才更新购物车。
图6-13查看购物车的显示界面
然后,分别根据是否接收到这三个指令来执行相应的操作,这部分代码没有放在其他文件中,而是直接放在了shopcart.asp文件中的页面体部分。
在本系统中,购物车是存储在Session中,根据所需要保存的数据,需要用到两个Session变量,作用如下:
Session("productlist"):购买的商品ID列表,以英文逗号分隔。
Session("quantitylist"):与Session("productlist")对应,分别表示购买商品数量,以英文逗号分隔。
例如对于下面的值:
Session("productlist")="70,71,72"
Session("quantitylist")="2,3,1"
它所表示的意思是购买编号为70的商品2件,购买编号71的商品3件,购买编号为72的商品1件。
购物车执行程序流程图如下图6-14所示:
图6-14购物车执行程序流程图
6.2.3提交订单模块设计
提交订单模块的主要功能:输入用户信息页面(paystep1.asp),输入用户信息表单(pycusinfo.asp),确认用户信息页面(paystep2.asp),确认用户信息表单(pyorderinfo.asp),提交结果页面(paystep3.asp),提交结果表单(pysucinfo.asp)。
提交订单过程就是一个填写顾客信息,然后向Orderlist和Orderdetail表中插入记录的过程,一共分为三步,前两步教为简单,第三步教复杂。图6-15为输入用户信息页面。
图6-15输入用户信息页面
当会员登陆后,此页会自动根据会员信息填写这些内容,会员只需要修改和确认即可,省去了重新输入送货信息的麻烦。
图6-16为输入信息用户信息表单。这页是对用户上一步所输入信息的确认,实现方法与管理端界面中的查看订单和客户界面中的查看购物车都很相似。
图6-16输入用户信息表单
确认提交后,就到了提交订单的最后一步,在这里,需要将订单数据写入到数据库中,如果操作成功,则给出成功信息,并提示顾客订单号,用于查询订单,如图6-17所示。
图6-17订单提交成功
提交订单最后一步对应的页面是paystep3.asp。在这个文件中包含了pysucinfo.asp文件,用于实现具体功能,并且所的数据库操作也都位于pysucinfo.asp文件中。
在paystep3.asp文件中,首先利用Request对象获取提交表单的数据,将一个订单的信息写入Orderlist表中,然后再将这个订单所包含的详细信息写入Orderdetail表中。因为这两个操作要么同时发生,要么都不发生,所以要用到事务。在进行第一个数据库操作之前开始事务,在最后一个数据库操作完成之后结束事块务,期间如果有错误发生的话,则将事务回滚。
客户端系统程序流程图如下图6-18所示:
图6-18客户端系统程序流程图
6.3系统调试运行
ASP的运行环境是一种服务器端的脚本环境,当用户从浏览器向WEB服务器请求.asp文件时,ASP脚本开始运行,然后web服务器调用ASP,ASP全面读取请求的文件,执行所有脚本命令,并将web页传送给浏览器,这就意味着用户不能简单的在现有的操作运行.asp文件需要服务器端的支持,目前除了windownt下的microseftinternetinformationwerver支持activewerver?术外,activeserver还可用于mswindowsntworkstation和mswindowd95/98中的personlwebwerver的构件,因此无论是nt还是95/98都必须安装支持ASP的服务器端环境,因为本站点是在xp下制作的,所以安装的是xp下的personalwebserver,首先在xp盘运行"add-on\pws"目录中的setup.exe文件,进行完personalwebserver安装后,重起计算机后,可以在栏中看到相应的图标,双击图标,就会出现个人web管理器最全面,单击"启动"按钮,刚服务器启动,在该界面单击"高
上一篇:
ASP在线手机销售系统(论文和程序)
下一篇:
年农业专业毕业生求职指南