网络编程
位置:首页>> 网络编程>> Asp编程>> asp网上购物车实例代码(4)

asp网上购物车实例代码(4)

  发布时间:2007-10-03 13:43:00 

标签:购物车

七、 ViewCart.asp
  1、 添加记录集,命名为cartRec,设置数据源为Select * From Cart
  2、 添加Grid控件,设定数据源为cartRec,显示三个字段:ProductName、Quantity、Price。添加两个Unbounded Column:
   1) 显示总价格,Field/Expression为:=[Quantity]*[Price]。
   2) 编辑/删除按钮,Field/Expression为:="<A Href=AddtoCart.asp?ProductID="+[ProductID]+"编辑/A>/<AHref=DeleteItem.asp?ProductID="+[ProductID]+">删除</A>"。这两个超链接分别将ProductID传递给AddtoCart.asp和DeleteItem.asp。
  3、 添加指向SaveOrder.asp的链接
   <A href="SaveOrder.asp">确认订单</A>

  八、 DeleteItem.asp删除用户选定的一条购物车记录
   1、 添加记录集cartRec,设置数据源为Select * From Cart
   2、 添加代码:


<Script Language=Javascript Runat=Server>
function cartRec_onbeforeopen()
{
newSQL="Select * from Cart Where (SessionID="+’Session.SessionID’+") 
And (ProductID="+Request("ProductID")+")";
cartRec.setSQLText(newSQL);
}//过滤记录集得到当前用户选定要删除的购物车记录
function cartRec_ondatasetcomplete()

cartRec.deleteRecord();
Response.Redirect("ViewCart.asp");
}//删除客户选定的购物车记录,然后转向ViewCart.asp

十、SaveOrder.asp保存购物车中的临时数据至Order表
  1、 添加记录集cartRec,设定数据源为Select * From Cart,在onbeforeopen()中过滤用Select * From Cart Wher SessionID=Session.SessionID过滤记录集,得到当前用户的所有未保存购物车记录
  2、 添加记录集orderRec,设定数据源为表Order
  3、 捕获cartRec的ondatasetcomplete()事件,输入代码:

function cartRec_ondatasetcomplete()
{
 while(!cartRec.EOF)
 {
  fields=new Array("ProductID","SessionID","Quantity");
  values=new Array(cartRec.fields.getValue("ProductID"),
  carRec.fields.getValue("SessionID"),
  carRec.fields.getValue("Quantity"));
  orderRec.Addimediate(fields,values);//向Order表中添加新记录
  cartRec.deleteRecord();//删除购物车中的一条记录
  cartRec.Movenext();//继续处理下一条记录
 }
 Response.Redirect("ViewCart.asp");
}


0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com