房子拍卖系统

时间:2013-06-15 10:46:50

标签: php sql

我有一个游戏,你可以竞标房屋。它非常简单。我有两张桌子

Table: houses

id | name | owner_id

Table: house_auctions

id | house_id | current_bid | bidder | enddate

现在如果有人想要出价我只是检查提交的出价是否大于current_bid。如果是我更新current_bid并将出价者设置为出价者。然后,在投标人身份的一周后,我更新到房屋表中的owner_id。我不在乎显示出价历史。我不需要那个。

因此,虽然这个功能很好,但我希望有一个功能是让用户设置限制。就像他在房子上出价5美元并将其限额设定为50美元。然后,如果其他人来并且出价为35美元,那么我不想接受他的出价,但是将36美元的任何人限制为50美元。

我该怎么做?我意识到我需要第三张桌子。我可以提供一些关于可能架构的提示吗?我也使用PHP。

3 个答案:

答案 0 :(得分:1)

我会在第三个表格中添加所有出价:

Table: house_auction_bids

id | house_auction_id | bid | bidder | date

然后您可以实施逻辑来计算出价。

答案 1 :(得分:0)

如果您不关心历史记录,那么您不能只添加第二个最高出价的列,然后当前出价列实际上是当前获胜者的最高出价。显示的当前出价不需要存储,因为它只是(第二高出价+ 1)

答案 2 :(得分:0)

我刚考虑过这个问题,我建议您在每次用户出价时添加数据集house_auctions。你没有改变现有的,你添加一个新的。

然后,您可以选择house_id的current_bid的最大值,然后获得当前的最高出价。

要实现bid_limit的原则,您只需输入限制为current_bid,然后查询房屋的两个最高出价,房屋当前的价格就是较低的价格+ 1.