gpt4 book ai didi

php - 多个用户尝试同时购买商品,锁定行?

转载 作者:行者123 更新时间:2023-11-29 14:24:59 24 4
gpt4 key购买 nike

假设我要向多个用户提供一个商品,则任何用户最多可以进行 10 次购买,直到该商品“停用”为止。这些项目取自 mainitems 表并过滤到特定用户。

对于每次购买,商品行中的计数都会增加,以指示购买的数量。我如何控制 11 个用户都试图购买该商品@一次?实现此目的的最佳方法是简单地锁定该行直到购买完成然后进行比较吗?或者有没有一种方法可以做到这一点,而不必不断删除其他用户的结果,然后重新激活它们?

最佳答案

您应该使用 sql 事务在 php 中,您应该使用 try{} catch(){} 语句

try
{
//mysql begin transaction


//the code that does what you said it would do


//mysql commit transaction
}
catch(Exception $ex)
{
//mysql rollback

/return false
}

通过这种方式,我认为不会出现两个用户同时请求该项目的情况,并且事务被处理为 FIFO。

关于php - 多个用户尝试同时购买商品,锁定行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11168813/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com