简体   繁体   English

如何生成下一个序列号并在php中比较第一个序列号?

[英]How to generate a next series number and compare first one in php?

code: 码:

if(isset($_POST['submit']))
{
    $number = 1000;
    $number++;
    $unique = strval($number);
    $product_id = "LTC_".$unique;
    $query = "insert into stock(`product_id`)values('".$product_id."')";
    //echo $query;

    $result = mysqli_query($con,$query);
    if($result==true)
    {
        $msg = "<div class='alert alert-success'>Record Save Successfully</div>";
    }
    else
    {
        $msg = "<div class='alert alert-danger'>Unable to Save Please Try Again !!!</div>";
    }
}

In this code I have a variable ie $product_id . 在这段代码中,我有一个变量,即$product_id Now what am I doing here I am insert product_id value in a table suppose first value of product_id is 1001 next will be 1002 . 现在我在这里做什么,我在表中插入product_id值,假设product_id第一个值是1001下一个将是1002 Now I want to generate a new number in a series way and If I delete any product_id it will never ever repeat again. 现在,我想以一系列方式生成一个新数字,如果删除任何product_id ,它将永远不会重复。 So, How can I do this ? 那么,我该怎么做呢?

try this 尝试这个

$sql = mysqli_query($con,"select max(product_id) as product_id from stock");
$fet = mysqli_fetch_assoc($sql);
$ides = $fet['product_id'];
$number = 1000;
$number++;
$unique = strval($number);
if($unique==$ides || $unique!=$ides)
{
    $new_id = ++$ides;
}
if(isset($_POST['submit']))
{
    $product_id = $new_id;
    //your custom code here
}

$unique数字存储在表中,然后始终从数据库中读取它,然后对其递增,制作新的$product_id然后将$unique的新值存储到该表中。

尝试简单地使用自动递增功能,而不应用任何唯一约束。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM