我正在使用API构建一个简单的优惠券代码购买应用程序。
这是工作流程
用户可以选择优惠券(getcoupon api)
如果获得了优惠券并将其标记为pre_book
,则转到付款api。
如果付款成功,则优惠券标记为booked
这工作正常,但我需要以下帮助:
如果用户是prebooked
优惠券并中止付款,则我想在某个时间后(例如15分钟)将优惠券代码状态标记为avaliable
,这在付款失败时也会发生。
coupon_code表的结构
1.id-PK
2.coupon_code
3.状态
我可以使用无用的工作吗?但是我认为这是不可能的,因为它不是定期更新的。
最佳答案
将付款尝试的日期时间保存在数据库中
创建一个每分钟运行一次的cronjob
更新表并在更新查询WHERE payment_date < DATE_SUB(NOW(),INTERVAL 15 MINUTE)
中使用以下WHERE将付款日期设置为NULL
关于php - PHP:自动在mysql中更新表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39033311/