使用php在数据库中插入下一个最大值

时间:2019-01-29 08:49:25

标签: php mysqli

想象一下,我在数据库warehouse中有一个数据,仓库编号为whID。在我的add.php中,有一个表单,当您单击“提交”按钮时,它将添加比数据库中的whID数字高的whID数据,而不使用自动递增。我为此尝试了一些代码,但没有任何效果。

这是我在add.php中的代码:

<form action="sidenav/function.php" method="post">
    <button type="submit" name="submit" class="button">Add</button>
</form>

这是我的add.php中表单功能的代码:

if (!isset($_POST['submit'])) {
$insert = $conn->prepare("INSERT INTO warehouse (whID) VALUES (?)");
$insert->bind_param('i', $whNumber);

if ($insert->execute()) {
header('Location: ../warehouseList.php');
    die();
 }

对不起,我的英语不好,希望您能理解我的问题。谢谢!

1 个答案:

答案 0 :(得分:1)

如果您不想使用自动递增,只需从数据库中获取最高的ID并自己递增即可。

简单又肮脏的示例

$stmt = $conn->prepare("SELECT MAX(whID) as id FROM warehouse LIMIT 1"); 
$stmt->execute(); 
$row = $stmt->fetch();
$id = $row["id"] + 1;

无论如何,我建议您对ID使用自动递增。这就是为其创建内容的场景。