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

ASP
如何善用Response.Buffer增进浏览速度?
利用 Meta Tag 来增加文件属性
要如何使用 ASP Error 组件?
Server.Execute和#include相异之处
ASP中文本文件与数据库文件的数据交换
如何用ASP建立图表
如何在ASP中通过ODBC调用Excel中的数据
不刷新页面改变下拉菜单内容
使用ASP重启服务器
用模板建立动态ASP页
如何用ASP将一大段文字中的HTML的标识去掉
让使用者可以看到你的ASP的原代码
用ASP实现在特定的时段或对特定访问者开放
在ASP中判断SQL语句是否执行成功
直接显示Monday等星期的ASP语句
LINE 的计数器源程序(附源代码)
使用asp+中的若干问题及解决方案
ASP实现多语言支持
Session对象在各浏览器中的有效范围
SQL Server如何解决加密问题?

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


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