checkout.asp
来自「《SQL Server 2000课程设计案例精编》-李昆-源代码-3436」· ASP 代码 · 共 99 行
ASP
99 行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta http-equiv="Content-Language" content="zh-tw">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title></title>
</HEAD>
<BODY><FONT face=Arial>
<!--#include file="Include/ADOdata.asp" -->
<%
Dim strUserID
Dim strAddress
Dim strOrderNo
'检查cookie
strUserID = Request.Cookies("userauthid")
If strUserID = "" Then
Server.Transfer "Login.htm"
End If
'接收送货地址
strAddress = Request.Form("txtAddress")
'执行Checkout.返回订单号码
strOrderNo = CheckOut(strUserID, strAddress)
Response.Write "您的订单已经正确送出.<BR>"
Response.Write "您的订单编号为:<font color='red'>" & strOrderNo &"</font>"
Response.Write "<BR>请记下订单编号.以防发生任何问题时查询."
Function CheckOut(strCustomer, strAddress)
'结帐功能-清除购物袋并将记录写入数据库
'然后将产生的XML资料通过HTTP传给供应商
Dim cmd
Dim conDB
Dim OrderNo
'使用Checkout stored procedure清除购物袋并将纪录写入orders数据库
Set conDB = CreateObject("ADODB.Connection")
conDB.Open strCon
Set cmd = CreateObject("ADODB.Command")
With cmd
Set .ActiveConnection = conDB
.CommandText = "CheckOut"
.CommandType = adCmdStoredProc
.Parameters(1).Value = strCustomer
.Parameters(2).Value = strAddress
.Execute
End With
If Not IsNull(cmd.Parameters(3).Value) Then
OrderNo = cmd.Parameters(3).Value
Else
OrderNo = "Invalid Order"
End If
'---
If OrderNo <> "Invalid Order" Then
'使用OrderSchema.xml注释Schema产生订单明细XML资料
Dim cmdOrder
Dim strmResult
Set cmdOrder = CreateObject("ADODB.Command")
Set cmdOrder.ActiveConnection = conDB
cmdOrder.Dialect = "{ec2a4293-e898-11d2-b1b7-00c04f680c56}" '指定使用XPath方言
cmdOrder.Properties("mapping schema") = Server.MapPath("AppFiles\OrderSchema.xml")
cmdOrder.CommandText = "Order[@OrderNo='" & OrderNo & "']" '使用XPath查询
Set strmResult = CreateObject("ADODB.Stream")
strmResult.Open
cmdOrder.Properties("Output Stream") = strmResult
cmdOrder.Properties("XML Root") = "PurchaseOrder" '指定根元素名称
cmdOrder.Execute , , adExecuteStream
Dim strXML
strXML = strmResult.ReadText
'将产生的XML资料通过HTTP传给供应商
Dim objHTTP
Set objHTTP = CreateObject("Microsoft.XMLHTTP")
objHTTP.Open "POST", "HTTP://localhost/supplierextranet/PlaceOrder.asp?txtOrder=" & strXML, False
objHTTP.send
Set strmResult = Nothing
Set cmdOrder = Nothing
Set conDB = Nothing
End If
CheckOut = OrderNo
Set cmd = Nothing
End Function
%>
</FONT></BODY></HTML>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?