ASP中购物车的简单设计实现
2014-10-22韦伟
韦伟
摘 要:购物车功能就是将商品信息与顾客购物行为绑定,并进行显示、编辑和存储的过程,其关键技术就是让服务器识别每个客户并与之建立关联。本文将实际出发,去探索利用ASP的Session结合ASP的Dictionary对象去实现购物车的基本功能。
关键词:ASP;购物车;Session;Dictionary
中图分类号:TP311 文献标识码:A
1 引言(Introduction)
随着电子商务的蓬勃发展,各种购物网站大量涌现,这些电子商务网站需要考虑的首要问题,就是购物车的实现方式。随着动态Web技术的发展,给购物车的实现提供了多种途径。
购物车功能就是将商品信息与顾客购物行为绑定,并进行显示、编辑和存储的过程,其关键技术就是让服务器识别每个客户并与之建立关联。目前购物车的实现主要通过cookie、Session和订单直接访问数据等形式,与服务器进行数据的交换[1]。本文将从电子商务专业教学实际出发,利用ASP的Session技术实现购物车的基本功能。
2 购物车的基本功能(The basic functions of the
shopping cart)
各大购物网站的购物车主要用于保存用户选购的商品信息,以方便客户进行商品的再筛选和数量确定,并进行统一付款,因此,一个完善的购物车至少应具备以下功能:
(1)拟购商品信息的添加。
(2)拟购商品的删除。
(3)拟购商品数量的修改。
(4)购物车中商品的清空。
3 实现思路(Realization of ideas)
在此,我们将采用Session方式,结合ASP的Dictionary对象去实现购物车的基本功能。
Session可以将当前用户的信息通过定义Session变量和对象,将数据作为私有变量存放于服务器,以实现数据在不同页面之间共享,从而保存和跟踪用户信息等[2]。因此,我们就可以利用Session变量来存储用户所选商品信息,并通过ASP代码将购物信息显示于web页面的购物车中。当然,我们也可以通过操作修改Session变量来修改购物车信息。
为了简单灵活地操作购物信息数据,我们可以选择ASP中与数据关联等价的Dictionary对象来操作数据。Dictionary对象具有key和item属性,其中key值是唯一的,而item值却是可以重复,并且与key值相关联。因此,设计过程中可以用key来存储商品ID,而使用item项存储购买商品的数量。然后再使用Dictionary的add、remove、removeall等方法来存取Dictionary对象中的数据[3]。
4 设计实现(Design implementation)
ASP中利用Session和Dictionary对象结合的方式实现购物车基本功能的过程如下:
4.1 商品加入购物车
spid=request.Form("spid")
spsl=1
'如Session("gwc")不存在,则创建Dictionary对象,并存入Session("gwc")中。
If (Not IsObject(Session("gwc"))) then
Set Session("gwc")=Server.CreateObject("Scripting.Dictionary")
end if
Set gwc=Session("gwc")
If (Not gwc.Exists(spid)) then
gwc.Add spid,spsl
else
gwc.item(spsl)=Cart.item(spsl)+1 ‘如果购物车中已经存在该商品,商品数量增加1
end if
Set Session("gwc")=gwc
4.2 购物车信息显示
Set gwc=Session ("gwc") ‘将Session("gwc")存入Dictionary对象
dim zsl,zje
zsl=0 ‘定义总数量
zje=0 ‘定义总金额
‘使用循环语句显示用户购买的商品和数量以及总价等信息。
Do while i spid = gwc.key (i) spsl= gwc.item (i) zsl= zsl + gwc.item (i) …… ‘连接数据库并访问该商品的相关信息,计算总金额 i=i+1 loop 4.3 购物车购物数量的修改 id=request.Querystring("id") ‘接收修改商品的编号 sl=request.Querystring("sl") ‘接收数量 Set gwc=Session("gwc") ‘将Session("gwc")存入Dictionary对象 If gwc.Exists(id) Then gwc.item(id)=Int(sl) end if Set Session("gwc")=gwc 4.4 购物车商品信息的删除 (1)特定商品删除 id=request.Querystring("id") ‘接收所删除商品的编号 Set gwc =Session("gwc") If gwc.Exists(id) then gwc.Remove(id) end if Set Session("gwc")= gwc (2)清空购物车 Set Cart=Session("gwc ") Cart.Removeall( ) Set Session("gwc ")=gwc 5 结论(Conclusion) 综上分析设计,我们可以看出,在ASP中利用Session和Dictionary对象相结合的形式来实现购物车功能,思路清晰,代码简单,容易理解。目前,一般的在线购物网站都采用该方式实现购物车功能。 参考文献(References) [1] 张志刚.购物车技术研究及改进方法[J].计算机应用与软件, 2010(03):68-70. [2] 杨坚争.电子商务网站典型案例评析[M].西安:电子科技大学 出版社,2010. [3] 吴代文,林关成.基于ASP购物车的设计与实现[J].信息技术, 2012(03):49-50. 作者简介: 韦 伟(1980-),男,本科,软件设计师.研究领域:数据库和 信息管理系统.