我正在使用 php mysql 生成发票编号。
我的唯一 ID 将采用以下形式:“vend/year/id/order_no”,其中
vend 是字符串
年份是当前年份
id 是 vendor_id
订单号是:从其他表(订单表)按 vender_id 计算订单,加一。
我的问题发生了,当用户打开“订单”网页时,我必须在用户填写表单并提交表单之前显示这个生成的 id,所以必须先生成 id,但不要插入。
现在让用户在两个选项卡中打开网页,然后根据逻辑两个网页将显示相同的 id。但是用户尝试同时提交两个表单,然后将根据唯一约束接受第一次提交,第二次查询将失败,但我不希望这样,而且 b/c 它是供应商基础工作,100k 用户将访问该表所以我无法在桌子上创建锁。我也不能阻止他在两个标签中打开网页。保持这种状态的最佳方法是什么。