简体   繁体   English

如何使用PHP增加唯一的收据编号并在mysql数据库中更新它?

[英]How do I increment a unique receipt number using PHP and update it in mysql database?

I am trying to increment a receipt number and add that new receipt number in the mysql database. 我试图增加一个收据编号,并将新的收据编号添加到mysql数据库中。

Here is my code that i have written: 这是我写的代码:

<?php 
    require 'config.php';
    $sql = "SELECT * FROM receipts ORDER BY id";
    $result = $conn->query($sql);
    $row = $result->fetch_assoc();
    $date = date("ymdhs");
    $row2 = $row['id'];
    $recnum = $date.'-00'.($row2+);
    echo $recnum ;
    $sql = "UPDATE receipts SET recnum='$recnum' WHERE id='$row2'";
    if ($conn->query($sql) === TRUE) {
        echo "updated";
    } else {
        echo "Error updating record: " . $conn->error;
    }

    $conn->close();

?>

The order is not specified in your select query. 在选择查询中未指定顺序。 Thus, you get no guarantees from your RDBMS that your data will come back in a certain order - or even in a consistent order - unless you query your data with an ORDER BY clause. 因此,除非您使用ORDER BY子句查询数据,否则RDBMS不能保证您的数据将以特定顺序返回,甚至无法以一致的顺序返回。 If you want to rely on this order, you must specify your desired order using ORDER BY. 如果要依赖此顺序,则必须使用ORDER BY指定所需的顺序。 "$row2+" wont increment $row2, use (++$row2) - plus plus should be before the variable- instead. “ $ row2 +”不会增加$ row2,请使用(++ $ row2)-加号应位于变量之前-。

I have managed to debug my code. 我已经设法调试了我的代码。 here is the working code. 这是工作代码。

<?php 

    require 'config.php';
        $sql = "SELECT * FROM receipts ORDER BY id DESC LIMIT 1";
    $result = $conn->query($sql);
    $row = $result->fetch_assoc();
    $date = date("ymdhs");
    $row2 = $row['id'];
    $recnum = $date.'-00'.$row2;
    echo $recnum ;
    $sql = "UPDATE receipts SET recnum='$recnum' WHERE id='$row2'";
    if ($conn->query($sql) === TRUE) {
        echo "";
    } else {
        echo "Error updating record: " . $conn->error;
    }

    $conn->close();

?>


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

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