欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

在电子商务中实现购物车的方法

程序员文章站 2022-05-20 18:44:11
手推车”功能的实现   “手推车”是在线购物网站(零售)中一项重要的功能。本文将要探讨用asp程序实现“手推车”功能的技巧。要想在网站上实现“手推车”功能,有好几种方法,比如用cookie、sess...

手推车”功能的实现

  “手推车”是在线购物网站(零售)中一项重要的功能。本文将要探讨用asp程序实现“手推车”功能的技巧。要想在网站上实现“手推车”功能,有好几种方法,比如用cookie、session或者隐藏帧等。这几种方法各有优缺点,这里着重讨论用cookie来实现“手推车”功能。

  用cookie实现 “手推车”功能的优缺点

  cookie是通过服务器端cgi、脚本或者客户端脚本把信息保存在客户机上的,以便为服务器或客户机再次使用这些信息提供方便。在javascript中有一些专门用来对cookie进行操作的函数,如设置cookie值的setcookie(name,value),删除cookie的deletecookie(name)等(详细见)。使用cookie来保存“手推车”信息的优点是,即使当用户不小心关闭了窗口,“手推车”中的信息也不会丢失,并且它占用很少的服务器端资源,缺点是必须要求用户端浏览器支持cookie并且打开它。

  “手推车”包含的功能子项

  1.把商品添加到“手推车”,就是订购。

  2.从“手推车”中删掉已订购的商品。

  3.修改“手推车”中某一商品的数量。

  4.清空“手推车”。

  5.显示,统计“手推车”中的商品。

  往“手推车”中 添加商品

  非常简单,就是把某一商品的信息(名称、价格、数量、折扣等)写入cookie即可。这里不必把商品的所有信息都写入cookie,只要记下商品在中编号或id(这里用catid表示)与商品的数量就行。在显示“手推车”信息时,根据catid可以从商品数据库中查询出这种商品的所有具体信息。往“手推车”中添加商品的实现方法如下:

  function addcat(catid,number){ //把商品添加到“手推车”函数

  if (number<=0)deletecookie(″mycat″+catid); //如果商品的数量少于或等于0,则删除该商品

  else   setcookie(″mycat″+catid,catid+″,″+number); //把商品id与数量写入cookie

  var cat=window.open(″showcat.″,″cat″,″toolbar=no,menubar=no,location=no,status=no,width=420,height=280″); //打开一个新窗口来显示统计的商品信息,即显示“手推车”}

  从“手推车”中 删掉商品

  也就是把cookie中的该商品信息删除掉,调用deletecat(catid)即可。

  function deletecat(catid){

  deletecookie(″mycat″+catid); //从cookie中删除

  var cat=window.open(″showcat.asp″,″cat″,″toolbar=no,menubar=no,location=no,status=no,width=420,height=280″); //在cat窗口显示统计的商品信息,即刷新显示“手推车”   }

  修改“手推车”中 商品的数量

  原理跟往“手推车”中添加商品是一样的,只不过把商品的数量修改成现在所要的数量。

  显示与统计 “手推车”中的商品信息

  显示的效果由showcat.asp实现。这里使用了asp中request.cookies集合。request.cookies用来检索客户中cookie值。我们通过遍历 cookies 集合中的所有 cookie 值取出我们的“手推车”的信息,然后从中分离出商品id与商品数量。这里使用了vbscript中的split函数,split函数返回基于 0 的一维数组,其中包含指定数目的子字符串。

  取出商品id与商品数量后再根据商品id从商品数据库中查询出该商品的具体信息,最后输出商品的名称、单价、折扣、数量和小计等,并累计商品总件数与商品总金额。  

源代码如下:

showcat.asp

<html><head><title>cat</title></head>

<body>

<form name=cat>

<table border="1" width="360" cellspacing="0" cellpadding="3" bordercolorlight="#ffffff" bordercolor="#008000">

<tr>

<td width="100%" colspan="5" align="center"><b>您的手推车信息</b></td>

</tr>

<tr>

<td width="45">名称</td>

<td width="45">单价</td>

<td width="45">折扣</td>

<td width="45">数量</td>

<td width="45">小计</td>

<td width="135"> </td>

</tr>

本新闻共2页,当前在第1页  1  2