2010-05-07 92 views
1

我正在做一个医生预约老虎机预约​​机制,在医生预约的时间段里会分成30分钟的每个时段...我已经完成了所有的工作代码..我面临的问题是1 ..这个预订是在2个地方,即2个接待..所以当1选择一个插槽(单选按钮)尚未确认,并保存在DB.other接待一定不能选择。如何做到这一点。 ..如何去abt它。老虎机预约​​问题

回答

0

从本质上说,

  • 我只问时隙时序前期,其余的详细资料。

  • 如果插槽可用,它会向服务器发送一个请求来锁定它,以便其他客户端不能使用它。

  • 如果它不可用,它会收到一个小通知,说明此插槽不可用,请单击以查看可用插槽。

我会去与AJAX(如果这是一个Web应用程序)。这是一个类似蓝军 - 白军问题的分布式系统问题。

1

我会用一些AJAX/AJAJ功能,定期更新关于空闲时隙的数据,或者我会做更简单 - 节省委任时,只检查吧,如果这个槽被采取,你的应用程序将用户重定向到表单以选择另一个插槽。

0

在表中添加一个“Locked By”字段。 当预订插槽,这样做:

UPDATE tablename 
SET LockedBy = userid, ... 
WHERE LockedBy IS NULL 

更新后,您可以选择是否LockedBy设置为你的用户ID。 如果没有,那么其他人肯定会殴打你,并且你需要告诉用户选择一个不同的插槽。

+0

无法与表更新或在表中插入一列进行异步...单击单选按钮时突然发送一些味精到服务器,并做到这一点。 – Hacker 2010-05-07 19:21:42

+0

您可以使用AJAX将来自用户的请求发送到服务器。但是,您需要一些支持线程安全的原子操作的集中式机制来执行锁定。数据库是一个很容易做到的地方,因为它是以线程安全的方式支持原子操作。 – mbeckish 2010-05-07 19:47:25