Php 如何基于查询sql中的最后一行进行循环?

Php 如何基于查询sql中的最后一行进行循环?,php,Php,我试图创建一个函数,根据数据库中属性的最后一行生成数字。 这就是我想做的: member_coupon |id | generated_number |type| name | code ------------------------------------------------ | 1 | 1 | A1| ola | A10001ola | 2 | 2 | A1| seb | A10002seb | 3 | 1

我试图创建一个函数,根据数据库中属性的最后一行生成数字。 这就是我想做的:

member_coupon

|id | generated_number |type| name | code
------------------------------------------------
| 1 |   1              |  A1| ola  | A10001ola
| 2 |   2              |  A1| seb  | A10002seb
| 3 |   1              |  A2| mia  | A20001mia
| 4 |   2              |  A2| udi  | A200002udi

我检查了表的最后一行,如果id
<5
它将继续A2的增量,它将产生如下输出
A20003name
;如果id是
>6
,它将创建另一个名为
A3
的类型,计数器将值重置回
0000
,然后它将生成类似于
A30001name
的内容

下面是我试过的。我仍在学习,我知道有比像这样做更有效的方法,只是我不知道怎么做。这是我尝试过的代码

 $sql= " SELECT generated_number, type
                 FROM member_coupon 
                 ORDER BY id DESC LIMIT 1 ";
  $query = mysqli_query($link, $sql);

if($row_count = mysqli_fetch_array($query_check))
  {
    $type= $row_count['type'];
    $generated_number= $row_count['generated_number'];
    $id= $row_count['id'];
 

    $sql_info ="SELECT name,
    FROM member_info 
    WHERE Status = '2'";
    $query_info = mysqli_query($link, $sql_info);

    if(mysqli_num_rows($query) > 0)
          while($row = mysqli_fetch_array($query))
          {
            $name= $row['name'];
         

            $new_num = 0;

              if($id <=2 )
              {
                $run =  $new_num + ($id + 1);
                
                $NEW_Num_Str = "".$run;
                    if( $run < 10 )
                    {
                    $NEW_Num_Str = "0000".$run;
                    } 
    
                else if( $run < 100 )
                    {
                    $NEW_Num_Str = "000".$run;
                    } 
    
                else if( $run < 1000 )
                    {
                    $NEW_Num_Str = "00".$run;
                    } 
    
                else if( $run < 10000 )
                    {
                    $NEW_Num_Str = "0".$run;    
                    }

                $type = 'A1';
    
              }

              if($id >=3 && $id <= 4 )
              {
                $run =  $new_num + ($id + 1);
                
                $NEW_Num_Str = "".$run;
                    if( $run < 10 )
                    {
                    $NEW_Num_Str = "0000".$run;
                    } 
    
                else if( $run < 100 )
                    {
                    $NEW_Num_Str = "000".$run;
                    } 
    
                else if( $run < 1000 )
                    {
                    $NEW_Num_Str = "00".$run;
                    } 
    
                else if( $run < 10000 )
                    {
                    $NEW_Num_Str = "0".$run;    
                    }

                $type = 'A2';
    
              }



// save into member_coupon table


$sql=“选择生成的\u编号,类型
会员优惠券
按id描述的订单限制1”;
$query=mysqli\u查询($link,$sql);
if($row\u count=mysqli\u fetch\u数组($query\u check))
{
$type=$row_count['type'];
$generated_number=$row_count['generated_number'];
$id=$row_count['id'];
$sql\u info=“选择名称,
来自会员信息
其中Status='2';
$query\u info=mysqli\u query($link,$sql\u info);
如果(mysqli_num_行($query)>0)
while($row=mysqli\u fetch\u数组($query))
{
$name=$row['name'];
$new_num=0;

如果($id=3&&$id,那么断点的概念可能会有所帮助