当前位置: 首页 > 图文教程 > 网络编程 > ASP > 制作我们自己的Ebay(拍卖系统)(5)

ASP
asp中如何限制重复提交同一表单
asp不用DSN访问数据库
ASP文件上传原理分析及实现实例
在ASP程序中访问Access数据库
datagrid编辑、修改、删除、翻页例子
用好ASP.NET 2.0的URL映射
ASP.NET中Datagrid常见错误
ASP.NET 2.0数据缓存功能简介
ASP.NET2.0的缓存控件和地址映射
ASP.NET 2.0中的DataSource系列控件
ASP.NET 2.0中的登陆控件简介
asp存储过程使用
在Asp中使用存储过程
ASP判断文件地址是否有效
ASP+SMTP完成邮件群发功能
用Asp隐藏文件路径实现防盗链
一个通用的保护ASP系统的方法
编写安全的ASP代码
ASP的错误处理集锦
ASP ActiveX 组件

ASP 中的 制作我们自己的Ebay(拍卖系统)(5)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 199 ::
收藏到网摘: n/a

  This is the complex part - you must make sure everyone's bids are correct, update those that have proxy bids, reallocate lots to winners, notify buyers who have been outbid, and perform some upkeep.

First let's look at the code to add a bid.



Function DoBid(ItemID, BidderID, Price, optional MaxPrice, optional MaxItems)


'Set variables and create objects
strConnectionString = "DSN=MyAuction;UID=username;PWD=password;Database=MyAuctionDB"
set rst = Server.CreateObject("ADODB.Recordset")


'Check to see if a bid already exists for this buyer and auction
strSQL = "SELECT BID FROM tblAuctionBids WHERE IID = " & ItemID & " AND " & _
"UID = " & BidderID
rst.open strSQL, strConnectionString


if rst.eof then 'A bid does not exist
rst.close
'Insert info into table
strSQL = "INSERT INTO tblAuctionBids (IID, UID, WinPrice, MaxBid, " & _
"BidItems, WinItems, Time VALUES (" & ItemID & ", " & BidderID & _
", '" & Price & "', '" & MaxPrice & "', " & MaxItems & _
", 0, '" & Now() & "')"
'Default WinItems to 0 for now


else 'A bid does exist
rst.close
'Update info in table
strSQL = "UPDATE tblAuctionBids SET WinPrice = '" & Price & _
"' WHERE IID = " & ItemID & " AND UID = " & BidderID
end if


rst.open strSQL, strConnectionString


''Fix bidding information
call ResolveBids(ItemID)


End Function



NOTE: This code above is developed for Visual Basic, and the keyword "optional" in the function opener is not supported in VBScript. In an ASP then, simply leave out the keyword "optional" here, and when you call the function, pass in an empty string, i.e.:

call DoBid(ItemId, BidderID, Price, "", "")

This function basically takes some info, and either inserts it or updates it in the Bids table - fairly simple stuff. The function ResolveBids however is where all the good stuff happens.