




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、购物车程序的规划功能模块有:添加物品、删除物品、清空购物车、修改购买物品数量在物品展示页面以物品的ID号为参数来运行JS函数PutWare(strID)PutWare(strID)函数内容如下:function PutWare(strID)Shopwin=window.open(shopping.asp?action=add&spid=+strID+&PtCount=1,WareList,width=580,height=250,scrollbars=yes,resizable=yes);Shopwin.focus();此函数功能,打开购物车shopping.asp并传传递当前页变量参数(acction,id,ptcount)物品展示外的调用如下:添加物品:a href=javascript:; onClick=PutWare()放入购物车二、添加商品代码分析:此段判断是否要放物品在购物车中,如果是的话,调用AddProduct(strPcID,intCount)过程,过程代码如下:UBound(Products) then Session(ProductList) = ProductList & strPcID & , Session(ProductCount) = ProductCount & intCount & , else 如果商品已在车中,累加数量 PtCounts(i)=Cint(PtCounts(i) + intCount Session(ProductList) =join(Products,) Session(ProductCount) =join(PtCounts,)将数组转换成字串end if end sub%三、删除商品代码分析:删除物品:input type=button name=Submit value=删除 onClick=DeleProduct()此段判断是否要删除购物车中的指定物品,如果是的话,调用ModifyProduct(strPcID,intCount)过程,过程代码如下:%sub ModifyProduct(strPcID,intCount)ProductList = Session(ProductList) 商品ID列表ProductCount=Session(ProductCount) 商品数量列表Products = Split(ProductList, ,)PtCounts = Split(ProductCount, ,) 寻求购物车中是否有该商品,如果有则删除For i=0 To UBound(Products)if Products(i)=strPcID then exit forNext 还有该商品,删除该商品指定的数量if i=UBound(Products) thenPtCounts(i)=intCountif PtCounts(i) 三、清空购物车代码分析:清空购物车:此段判断是否要清空购物车中的物品,如果是的话,调用clearProduct()过程,过程代码如下:四、其他细节方面主要的asp购物车功能基本已经完成,现在说下细节方面的程序规划与实现、在修改购物车中物品的数量。直接用JS里的onclick驱动SetCount函数就可以了,实现方法如下:input type=button name=Submit2 value=修改数量onClick=SetCount(,document.WareList.ptCount.value)SetCount函数如下:function SetCount(strID,strCount)if (CheckValue(strCount)window.location=shopping.asp?action=modify + &spid= + strID + &PtCount= + strCount;、选定商品之后提交提交时就没有什么技术了,直接把购物车中的表单值放在数据库中就行了,之后读取、修改什么的,或者跳转到一个用户信息表单,填好用户信息再提交,自己举一反三吧!为做到程序的优化,常用到的函数或者过程可以放到指定的asp文件里,比如这里的AddProduct(strPcID,intCount),ModifyProduct(strPcID,intCount)、clearProduct()等。用ASP编写购物车代码2010-10-14 15:01转载自 shanyajun最终编辑 shanyajun网上购物已成为生活的潮流,在网上购物之后,想要随时查看自己已买的东西,想要随时删除或修改某件商品数量,要怎么做呢?下面我就来写代码及释义。先来做用户登陆页面(login.asp):购物车的实现用户名:密码:然后来写接收用户所填写的信息以检查是否存在该用户的页面(check.asp),如果存在该用户,那么就跳到购物的首页(index.asp):alert(用户名或密码不正确!);history.back();那么,接下来就是购物的首页(index.asp)了下面用css样式表将表格里的字体统一设置为14号字做一个搜索的文本框,方便用户搜索商品。其原理是这样的:用户填入要搜索的商品后,通过表单提交到本页面,从数据库中查找像用户填写的字符串的商品,再显示出来每个商品下面都有一个购买按钮,需要做一个表单ahref=product.asp?id=imgsrc=images/width=100height=100border=0inputtype=hiddenname=idvalue=inputtype=hiddenname=pricevalue=/名称:价格:如果用户想要查看商品更详细的信息,那么就应该将商品图片做成一个超链接,连接到product.asp,在该页面显示详细信息。在该页面也有一个购买按钮,点击之后同样跳到buy.asp:imgsrc=images/width=100height=100名称:价格:inputtype=buttononclick=javascript:location.href=buy.asp?id=&price=value=购买点击购买之后触发一个onclick事件,跳转到buy.asp用户点击了购买以后,将该商品的id传到buy.asp,下面来写buy.asp的代码:将连接数据库的字符串包含进来执行完了sql语句之后将跳转到购物车页面(mycar.asp),显示出用户所购买的商品。并且有修改数量的按钮和删除的超链接orderid商品名称商品id单价数量删除修改inputtype=textsize=10value=name=pcountahref=delete.asp?id=删除inputtype=buttononclick=javascript:document.form1.action=update.asp?rowcount=&pid=;document.form1.submit();value=确认修改返回继续购物总金额为:点击修改数量的按钮之后,就跳到update.asp:同样点击删除之后,就跳到delete.asp,在该页面得到商品的id一个简单的购物车做好了,它用到了连接数据库、数据库的增、删、改、查。 以下是您所选购的物品清单 /函数名:fucCheckNUM /功能介绍:检查是否为数字 /参数说明:要检查的数字 /返回值:1为是数字,0为不是数字 function fucCheckNUM(NUM) var i,j,strTemp; strTemp=0123456789; if ( NUM.length= 0) return 0 for (i=0;iNUM.length;i+) j=strTemp.indexOf(NUM.charAt(i); if (j=-1) /说明有字符不是数字 return 0; /说明是数字 return 1; function clean() window.location.href=clear.asp !- function FrontPage_Form1_Validator(theForm) var checkOK = 0123456789-; var checkStr = theForm.value; var allValid = true; var decPoints = 0; var allNum = ; for (i = 0; i checkStr.length; i+) ch = checkStr.charAt(i); for (j = 0; j checkOK.length; j+) if (ch = checkOK.charAt(j) break; if (j = checkOK.length) allValid = false; break; allNum += ch; if (!allValid) alert(在 请输入正确的商品数量! 域中,只能输入 数字 个字符。); theForm.focus(); return (false); return (true); /- 商品编号 商品名称 商品价格 商品数量 购买 总价 % Sum = 0 While Not rs.EOF Quatity = CInt( Request( Q_ & rs(Product_Id) ) If Quatity = 0 Then Quatity = CInt( Session(rs(Product_Id) ) If Quatity input Name= Value= Size=3 input Type=CheckBox Name=cpbm Value= Checked .00元 ASP程序实现购物车的方法手推车功能的实现2008-09-08 10:42“手推车”是在线购物网站(零售)中一项重要的功能。本文将要探讨用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(mycatcatid); /如果商品的数量少于或等于0,则删除该商品else SetCookie(mycatcatid,catid,number); /把商品ID与数量写入Cookievar cat=window.open(showcat.asp,cat,toolbar=no,menubar=no,location=no,status=no,width=420,height=280); /打开一个新窗口来显示统计的商品信息,即显示“手推车”从“手推车”中 删掉商品也就是把Cookie中的该商品信息删除掉,调用Deletecat(catid)即可。function Deletecat(catid)DeleteCookie(mycatcatid); /从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.aspCat您的手推车信息名称单价折扣数量小计% dim conn,rs,sqlstr,cook,catid,number,sum,allnum,ii=0set conn=server.createobject(ADODB.CONNECTION) 建立数据库ADO连接实例conn.open DSN,USERID,PWD 打开数据库连接set rs=Server.CreateObject(ADODB.Recordset) 建立数据库ADO记录集连接实例for each cook in request.cookies 遍历 Cookies 集合if instr(cook,mycat) then 判断是否“手推车”信息catid=split(request.cookies(cook),)0 分离出商品IDnumber=split(request.cookies(cook),)1 分离出商品数量sqlstr=select * from cat where id=&catid& SQL查询语句rs.open conn,sql,1,3 执行查询,产生记录集xiaoji=rs(单价)*rs(折扣)*number 计算小计response.write &rs(名称)&response.write &rs(单价)&response.write &rs(折扣)&response.write response.write &xiaoji&response.write allnum=allnum+number 累计商品总件数sum=sum+xiaoji 累计总金额rs.closei=i+1end ifnextset rs=nothingset conn=nothing%合计 结帐继续购物 清空“手推车”javascript中操作COOKIE的函数源码如下:function Setcookie (name, value) /设置名称为name,值为value的Cookievar argc = SetCookie.arguments.length;var argv = SetCookie.arguments;var path = (argc 3) ? argv3 : null;var domain = (argc 4) ? argv4 : null;var secure = (argc 5) ? argv5 : false;document.cookie = name + = + value +(path = null) ? : (; path= + path) +(domain = null) ? : (; domain= + domain) +(secure = true) ? ; secure : );function Deletecookie (name) /删除名称为name的Cookievar exp = new Date();exp.setTime (exp.getTime() - 1);var cval = GetCookie (name);document.cookie = name + = + cval + ; expires= + exp.toGMTString();function Clearcookie() /清除COOKIEvar temp=document.cookie.split(;);var loop3;var ts;for (loop3=0;loop3temp.length;loop3+)ts=templo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门面租赁合同修复协议书
- 长租公寓租赁合同协议书
- 防护网工程销售合同范本
- 法人替公司还款合同范本
- 消防项目安全施工协议书
- 瑕疵生态板出售合同范本
- 物流人力合作合同协议书
- 销售咨询服务合同协议书
- 用于工作安置的合同协议
- 电梯门框安装合同协议书
- GB/T 29529-2013泵的噪声测量与评价方法
- GB/T 1591-2018低合金高强度结构钢
- D类《职业能力倾向测试》考试试题及答案
- 10000中国普通人名大全
- ISO9001:2015中英文对照版
- 眼部化妆技巧课件
- 置业顾问基础知识培训(最新版)
- TSG-Z7003-2004 特种设备检验检测机构质量管理体系要求-高清正版
- 汽车VIN效验码计算器
- 德州寺北35千伏输变电工程节地评价报告
- 用友NC财务信息系统操作手册(全)
评论
0/150
提交评论