$public_prod_id = 'C'.rand(1000000000,9999999999);
$_SESSION['public_prod_id'] = $public_prod_id;
$exist = mysqli_num_rows($pdo->query(
"SELECT * FROM `product`
WHERE `public_prod_id` = '{$_SESSION['public_prod_id']}' "
));
if($exist == 0){
$pdo->query(
"INSERT INTO ``
(
``
)
VALUES
(
'{}'
)
"
);
}
如果找到的結果是大於0
那我如何回到上面再產生一組新的號碼,然後再重新走一次?
以上方法有一个问题,在1和2之间如果有新的重复,尽管概率很低,但是插入的时候依然会报错。
改进:
这样其实还有一个问题,随着数据量的增大,这个函数重复执行的次数会越来越多。