Php 如何避免重复订单ID
如果同时提交,我面临订单id可能重复的问题。Php 如何避免重复订单ID,php,mysql,redundancy,Php,Mysql,Redundancy,如果同时提交,我面临订单id可能重复的问题。 我可以知道如何完全解决这个问题或避免它发生吗 下面是我的代码,显示了我是如何获取订单ID并将其发送到数据库的 <?php $sqlt = "SELECT ORD_ID FROM tpointgroup WHERE Group_ID = '$tid'"; $order = mysqli_query($conn , $sqlt); $rowcount
我可以知道如何完全解决这个问题或避免它发生吗 下面是我的代码,显示了我是如何获取订单ID并将其发送到数据库的
<?php
$sqlt = "SELECT ORD_ID FROM tpointgroup WHERE Group_ID = '$tid'";
$order = mysqli_query($conn , $sqlt);
$rowcount = mysqli_num_rows($order);
if ($rowcount == 0)
echo "No records found";
else
{
$rowt = mysqli_fetch_assoc($order);
}
$ordid = $rowt["ORD_ID"] + 1;
?>
$ORD_ID = date('ym').str_pad($tkid, 6, '0', STR_PAD_LEFT);
$insert = "insert into cusinfo (ORD_ID) values ('$ORD_ID')";
$insert3 = "UPDATE tpointgroup SET
ORD_ID = '$ordid'
WHERE Group_ID = $tid ";
尝试以下操作以生成唯一的订单id
$order_id = time() . mt_rand() . $tid;
使用从tpointgroup中选择不同的ORD_ID,其中Group_ID=“$tid”,这是tpointgroup
表的主键?在tpointgroup
@mith中是否有任何AUTO-INCREMENT
字段,是的,在同一个表中仍然有另一个AUTO-INCREMENT。MySQL允许正好有一个或零个AUTO-INCREMENT列。请将表定义添加到您的问题中,如上所述(SHOW CREATE table),这只是一个肮脏的解决方法,不是解决方法。最好有运行订单id号。一些税务机关可能想要无间隙的订单号。