购物小车 tsdg.asp 的代码

<%

'过期时间为0,每次浏览都重新下载页面

response.expires=0

%>

<HTML>

<HEAD>

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb_2312-80">

<TITLE>购物小车</TITLE>

</HEAD>

<BODY LINK="#0000ff" VLINK="#800080" BACKGROUND="../cys.jpg">

<p align="center">

<center>

<a href="../index.asp">返回主页</a>|<a href="wssd.asp">返回上页</a>

<a href="xsjs.asp">新书介绍</a>|<a href="whjy.asp">文化教育</a>|

<a href="dzjc.asp">大专教材</a>|<a href="kxjs.asp">科学技术</a>|

<a href="sfkx.asp">社会科学</a>|<a href="mailto:fsxss@tom.com">联系我们</a>

</p></center>

<p align="center">

<center>

<a href="yfzc.asp">用户注册</a>|<a href="gszn.asp">购书指南</a>|

<a href="tsdg.asp">图书定购</a>|<a href="ckdd.asp">查看订单</a>|

<a href="wszf.asp">支付方式</a>|<a href="tsps.asp">图书配送</a>|

<a href="shfw.asp">售后服务</a>|<a href="yfly.asp">用户留言</a>

</p></center>

<%

'定义日期时间

today=formatdatetime(now(),1)&formatdatetime(now(),3)

'1.创建连接对象 Connection

set cn=Server.CreateObject("ADODB.Connection")

cn.open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE="&server.MapPath("/fsxss/mdb/wssdk.mdb")

 

'2.创建记录集对象 Recordset

set rs=Server.CreateObject("ADODB.Recordset")

 

'3.打开计数表

rs.open"select 计数 from 计数表",cn,3

%>

<p><center><a href="wssd.asp">网络天地书店</a>&nbsp; 

日期时间:<%response.write today %>&nbsp;计数器:<% =rs("计数")%>

</center>

 

<p>

<%

rs.close

 

'1.定义变量和数组

'书袋已满、书袋无书、用户操作、图书号、图书名称、定购数量、合计金额、总计金额、已选图书

dim sdym,sdws,yfcz,tsh(10),tsmc(10),dgsl(10),hjje(10),zjje,yxts

 

'2.session("firstselect")为真标志是第一次选书

' 第一次选书,初始化图书号、定购数量数组,

'否则,用 session 保存的值赋值给图书号、定购数量数组。

' 网页间传递变量的会话 Session 对象存储用户会话信息。

' Session 要求浏览器支持 Cookie。

if session("firstselect")="" then session("firstselect")=true

if session("firstselect")=true then

for i=0 to 9

tsh(i)=0

dgsl(i)=0

hjje(i)=0

next

else

for i=0 to 9

' 第i个会话值赋值给第i个数组元素

tsh(i)=session("tsh")(i)

dgsl(i)=session("dgsl")(i)

next

end if

 

'3.检测到已购10种书时,指定为书袋已满,sdym 为真。

for i=0 to 9

if tsh(i)=0 then

sdym=false

exit for

end if

sdym=true

next

 

'4.使用用户提交的方法对用户作 yfcz 变量赋值,

'用 select 分支选择功能:选书、删除、全部删除

yfcz=request.querystring("yfcz")

select case yfcz

 

'5.用户操作是选书时,某书已选,则该定购数量加1;

'未选,则把图书号赋值给图书号数组的0元素。

case "select"

for i=0 to 9

if tsh(i)=request.querystring("tsh") then

dgsl(i)=dgsl(i)+1

'标志已选图书

yxts=true

exit for

end if

next

 

if yxts<>true then

for i=0 to 9

if tsh(i)=0 then

tsh(i)=request.querystring("tsh")

dgsl(i)=1

exit for

end if

next

end if

 

'6.用户作是删除选取的书时,则该定购数量减1。

case "del"

for i=0 to 9

if tsh(i)=request.querystring("tsh") then

dgsl(i)=session("dgsl")(i)-1

'该定购数量为0,则置图书号为0

if dgsl(i)=0 then tsh(i)=0

end if

next

 

'7.用户操作是删除全部书时,则置全部图书号、数量为0。书袋无书 sdws 为真。

case "delall"

for i=0 to 9

tsh(i)=0

dgsl(i)=0

next

sdws=true

end select

 

'8.检查书袋后,设置书袋无书 sdws 的真假。

for i=0 to 9

if tsh(i)<>0 then

sdws=false

exit for

else

sdws=true

end if

next

 

'9.表单:激活处理订单程序

%>

<p align="center">

<b><font color="#0000FF">购物小车</font></b>

<form method="POST" action="cldd.asp">

<center>

<div align="center">

<center>

<table border="1" bordercolor="#0000FF" cellspacing="0" cellpadding="11">

 

<%

'10.书袋无书,则提示未选购书,并释放 session。

if sdws=true then

response.write"<center> 未选购书,书袋无书。</center>"

session.abandon

else

 

'11.书袋已满,则提示只能选购10种书。

if sdym=true then response.write"只能选购10种书,书袋已满。"

%>

 

<tr>

<td align="center">图书号</td>

<td align="center">图书名称</td>

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

<td align="center">图书定价</td>

<td align="center">合计金额</td>

<td align="center">图书类别</td>

<td align="center">删除一本</td>

</tr>

 

<%

'12.输出已选购图书

for i=0 to 9

if tsh(i)<>0 then

sql="select 图书名称,图书价,图书类别 from 图书记录表 where 图书号='"&tsh(i)&"'"

rs.open sql,cn,3

if not rs.eof then

'将图书名称记入数组 tsmc(10)

tsmc(i)=rs("图书名称")

'计算已选每种书的合计金额

hjje(i)=rs("图书价")*dgsl(i)

'计算定购图书的总计金额

zjje=0

zjje=zjje+hjje(i)

%>

 

<tr>

<td valign="top" align="center"><% =tsh(i)%></td>

<td valign="top" align="center"><% =rs("图书名称")%></td>

<td valign="top" align="center"><% =dgsl(i)%></td>

<td valign="top" align="center"><% =rs("图书价")%></td>

<td valign="top" align="center"><% =hjje(i)%></td>

<td valign="top" align="center"><% =rs("图书类别")%></td>

<td valign="top" align="center">

<a href="tsdg.asp?yfcz=del&amp;图书号=<%tsh(i)%>"> 删除一本</a></td>

</tr>

 

<%

end if

'关闭记录集

rs.close

end if

next

%>

 

<tr>

<td align="center" colspan="4">总计金额</td>

<td align="center"><% =zjje%></td>

<td align="center" colspan="2"></td>

</tr>

</table>

 

</center>

</div>

</center>

 

<p align="center">

用户号:<input type="text" name="yfh" size="3">

购书密码:<input type="password" name="gsmm" size="10">

</p>

<p align="center">

<input type="submit" value="立即定购" name="Submit">

<input type="button" value="全部删除" name="delall" onClick="top.location.href='tsdg.asp?yfcz=delall'">

</p>

 

<%

'释放 Recordset 对象

set rs =nothing

end if

%>

</form>

 

<%

'13.使用 Session 保存数组

session("tsh")=tsh

session("dgsl")=dgsl

session("tsmc")=tsmc

session("fistselect")=false

cn.close

'保存总计金额

session("zjje")=zjje

%>

 

<p align="center">

图书定购代码 <a href="tsdg_dm.asp">tsdg_dm</a>

处理订单代码 <a href="cldd_dm.asp">cldd_dm</a>

<p align="center">

<a href="../index.asp"><img border="0" src="../fhzy.gif" width="92" height="25"></a>

<a href="tsdg.asp"><img border="0" src="../fhsy.gif" width="92" height="25"></a>

</p>

</BODY>

</HTML>