我正在創(chuàng)建一個(gè)競(jìng)賽頁(yè)面,并在 mysql 中有一個(gè)票務(wù)表。每張票證都包含一個(gè)可用性列,該列為“1”或“0”(真或假)。當(dāng)用戶將一張票添加到他們的購(gòu)物籃時(shí),我將該值設(shè)置為 0,以便其他用戶在其他人購(gòu)買該票時(shí)無法嘗試購(gòu)買該票。我想要一個(gè)超時(shí),以便在 x 時(shí)間(假設(shè) 10 分鐘)后該值基本上設(shè)置回 1我知道如何做除這個(gè)計(jì)時(shí)器之外的所有方面。我已經(jīng)看到了一些有關(guān)事件的信息,但我不確定如何使用它們。我想要的偽代碼adding to basketavailability = 0trigger timer eventafter 10 minsif purchased = 0 availability = 1(我主要是用PHP控制網(wǎng)站)
1 回答

HUX布斯
TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超6個(gè)贊
如果重新考慮你的策略,你可能會(huì)發(fā)現(xiàn)生活更輕松。您會(huì)發(fā)現(xiàn),如果您將availability
字段更改為日期,您可以將策略更改為此,并獲得相同的網(wǎng)絡(luò)行為,而無需增加解鎖預(yù)定過程的復(fù)雜性;
availability
如果之前now
未購(gòu)買過,則允許添加到購(gòu)物籃。設(shè)置
availability
為將來可以購(gòu)買門票的日期并且purchased
=0
。當(dāng)有人將門票添加到購(gòu)物籃時(shí),將該
availability
字段設(shè)置為now + 10 mins
(這將確保在接下來的 10 分鐘內(nèi)無法領(lǐng)取該門票,但 10 分鐘后它將自動(dòng)可用,無需任何額外處理)。
- 1 回答
- 0 關(guān)注
- 117 瀏覽
添加回答
舉報(bào)
0/150
提交
取消