我正在一个网站上工作,人们可以在该网站上注册课程的“时间段”。可用的日期/时间段存储在数据库中。当页面打开时,PHP 脚本会检查“booked”变量设置为“no”(默认值)的所有条目,并将它们显示为可用插槽。每个时段只有一个人可以注册。
我有 IPN 脚本,它将在付款完成后更新数据库并将时间段“预订”变量更改为“是”。都好。
为了避免可能的重复预订,一旦有人点击它,我需要暂时删除一个时间段。但是,如果有人注册但从未真正付款,会发生什么?(也就是说,他们填写了他们的姓名、电子邮件等,然后它会进入数据库,但是他们从不点击完成 PayPal 付款?)如果付款被取消或未验证,我的 IPN 脚本会重置 DB 表变量,但是如果他们一开始就没有使用 PayPal,就没有什么可以重置它的。
如果 PayPal 没有更新,是否有某种方法可以在一段时间后(例如 30 分钟)自动将“已预订”变量重置为“否”?或任何其他建议如何处理?