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

ASP
ASP进阶教程Ⅰ:循序渐进学留言薄
ASP进阶教程Ⅱ:一个简单的留言簿
ASP进阶教程Ⅲ:给留言簿润下色
ASP进阶教程Ⅵ:留言簿在线删除留言
ASP进阶教程Ⅴ:留言簿在线留言编辑(一)
ASP进阶教程Ⅴ:留言簿在线留言编辑(二)
ASP进阶教程Ⅳ:加入精彩留言
ASP进阶教程Ⅸ:留言查询功能(一)
ASP进阶教程Ⅸ:留言查询功能(二)
ASP进阶教程Ⅷ:数据库版本的留言簿
ASP基础讲座(上)
ASP系列讲座(一)关于 Active Server Pages
ASP系列讲座(二)ASP 的新功能
Asp用于分页的两个函数
ASP与Oracle连接时的TNS错误
小工具:统计有多少行JS代码和ASP代码,并有多少字节
一个xmlhttp读取xml的例子
ASP终极防范上传漏洞
防止网站内容被人小偷和采集的ASP代码
批量判断域名是否被注册程序代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 127 ::
收藏到网摘: 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.