微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp购物车源码

cart.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<Meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>无标题文档</title>

<script type="text/javascript" src="js/jquery.js"></script>

<style type="text/css">

a{text-decoration:none;}

td,div{font-size:12px}

</style>

</head>

<body>

<%

dim action,bookid,aProducts,delid,i,conn,rs,sql,sNewProducts

set conn = Server.CreateObject("adodb.connection")

conn.connectionstring="provider=microsoft.jet.oledb.4.0;data source="&server.MapPath("#dbFB90.Mdb")

conn.open

action=Request.QueryString("action")

if Request.QueryString("id")="" then

bookid=Session("productlist")'//////////////////////////////////调入查询物品的id

else

  if Session("productlist")="" then

Session("productlist")=Request.QueryString("id")

bookid=Request.QueryString("id")

  else

    if InStr(Session("productlist"),Request.QueryString("id"))<1 then

bookid=Session("productlist")+","+Request.QueryString("id")'//////////////把id全部存储到bookid中类似与数组

Session("productlist")=bookid

    else

bookid=Session("productlist")

    end if

  end if

end if

if Session("productlist")="" then'////////////////////////若id为空,则说明用户没有购物

bookid=0

end if

if action="del" then '删除购物车中的某一件商品

aProducts=Split(Session("ProductList"),",")

delid=CStr(Trim(Request.QueryString("id")))

For i=0 To UBound(aProducts)    '循环所有商品ID

If trim(aProducts(i))<>delid then

'不等于被删除的ID时则保存进新的列表中

sNewProducts = sNewProducts & "," & aProducts(i)

end if

Next

Session("ProductList") = mid(sNewProducts,2)

  if Session("ProductList")="" then

bookid=0

  else

bookid=Session("ProductList")

  end if

elseif action="delall" then

Session("ProductList")=""

response.Redirect("cart.asp")

end if

%>

<form name="myform" method="post" action="cart.asp">

  <input type="hidden" name="id" value="<%= bookid %>" />

  <table width="90%" border="1" cellspacing="5" cellpadding="3" border-collapse:collapse; margin-bottom:20px;">

  <tr>

    <td align="center">商品id</td>

    <td align="center">商品名称</td>

    <td align="center">商品单价</td>

    <td align="center">订购数量</td>

    <td align="center">商品金额</td>

    <td align="center">操作</td>

  </tr>

<%

'根据临时存储到Session里的商品ID分别从商品数据库循环调出商品显示到购物车页面,遇到重复ID不显示

Dim Quatity,sum,aa '判断input 名

sum=0

if bookid<>0 and bookid<>"" then

set rs=Server.CreateObject("adodb.recordset")

sql="select id,product_name,price,info from product where id in ("&bookid&") order by id" '这里替换成实际的商品数据库及字段

rs.open sql,1,1

if not (rs.eof and rs.bof) then

aa=1

do while Not rs.EOF

Quatity = CInt(Request("sl"&aa))

If Quatity <=0 Then Quatity = 1 '以下为购物车每一件商品内容,包含ID、名称数量及取消

%>

  <tr>

    <td align="center"><%=rs("id")%></td>

    <td align="center"><a href="showproduct.asp?id=<%=rs("id")%>" title="<%=rs("info")%>" target="_blank"><%=rs("product_name")%></a></td>

    <td align="center"><span id="unitprice<%= aa %>"><%=rs("price")%></span></td>

    <td align="center">

    <input type="hidden" id="itemId<%= aa %>" value="<%= rs("id") %>" />

    <input type="button" value="-" onclick="myfun(1,'<%= aa %>')" /> 

    <input name="sl<%=aa%>" id="sl<%= aa %>" type="text" value="<%= Quatity %>" size="3" readonly="readonly" /> 

    <input type="button" value="+" onclick="myfun(2,'<%= aa %>')" /></td>

    <td align="center"><span id="total<%= aa %>"><%=(rs("price")*Quatity)%></span></td>

    <td align="center"><a href="?id=<%=rs("id")%>&action=del"><font color="#FF0000" size="4" font-weight:bold">×</font></a></td>

  </tr>

<%'循环读取ASP购物车内的商品

sum=FormatNumber(rs("price")*Quatity+sum,2)

rs.movenext

aa=aa+1

Loop

else

response.Write("<tr><td align='center' colspan='6'>暂无选购的商品,请继续<a href='products.asp'>购物</a></td></tr>")

end if

rs.close

set rs=nothing

Else

response.Write("<tr><td align='center' colspan='6'>暂无选购的商品,请继续<a href='products.asp'>购物</a></td></tr>")

end if

conn.close

set cothing

%>

</table>

</form>

<div text-align:right; width:90%">

<input type="button" value="清空购物车" onclick="if(confirm('确定要清空购物车么?')){window.location.href='?action=delall';}" />

总价:<span id="tcount"><%= sum %></span>元

<input type="button" value="继续购物" onclick="window.location.href='products.asp';" />

<input type="button" value="立即结算" onclick="nextStep();" />

</div>

<script type="text/javascript">

function round(v,e){

var t=1;

for(;e>0;t*=10,e--);

for(;e<0;t/=10,e++);

return Math.round(v*t)/t;

}

function myfun(str,obj){

var quantity,sum=0;

if(str==1){

if(document.getElementById("sl"+obj).value>1){

document.getElementById("sl"+obj).value--;

}

}

else{

document.getElementById("sl"+obj).value++;

}

quantity=$("#sl"+obj).val();

$("#total"+obj).text(round($("#unitprice"+obj).text()*quantity,2));

for(var i=1;i<<%= aa %>;i++){

sum+=round($("#total"+i).text(),2);

}

sum=round(sum,2);

$("#tcount").text(sum);

var strTemp;

for(var j=1;j<<%= aa %>;j++){

if(j==1){

strTemp=$("#itemId"+j).val()+"|"+$("#sl"+j).val()+"|"+$("#total"+j).text();

}

else{

strTemp+="#"+$("#itemId"+j).val()+"|"+$("#sl"+j).val()+"|"+$("#total"+j).text();

}

}

//alert(strTemp);

}

function nextStep(){

var strTemp;

for(var j=1;j<<%= aa %>;j++){

if(j==1){

strTemp=$("#itemId"+j).val()+"|"+$("#sl"+j).val()+"|"+$("#total"+j).text();

}

else{

strTemp+="#"+$("#itemId"+j).val()+"|"+$("#sl"+j).val()+"|"+$("#total"+j).text();

}

}

$.post("saveData.asp",{str:strTemp,rnd:new Date().getTime()},function(msg){alert(msg);})

}

</script>

</body>

</html>

saveData.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<%

dim conn,str,strArr,arrstr

set conn = Server.CreateObject("adodb.connection")

conn.connectionstring="provider=microsoft.jet.oledb.4.0;data source="&server.MapPath("#dbFB90.Mdb")

conn.open

str=request.Form("str")

strArr=split(str,"#")

for i=0 to ubound(strArr)

arrstr=split(strArr(i),"|")

conn.execute("insert into [orders](productId,Quantity,total) values("&arrstr(0)&","&arrstr(1)&","&arrstr(2)&")")

next

response.Write("success")

conn.close

set cothing

%>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐