我希望添加一个函数,该函数将从表中的特定列中获取最大的数字,并在执行插入查询之前添加到该列中。(我不能让它自动递增,因为多个条目需要有相同的值,这是通过if语句控制的)但是它没有这样做,也没有在最大值的基础上增加1。

$max = "SELECT MAX(LocationID) FROM boss";
$result = mysqli_query($connection, $max);
$locID = $result+1;

$query = "INSERT INTO boss (ID, Name, Type, Location, LocationID, Difficulty) VALUES ('0', '$boss', '$type', '$loc', '$locID', '$diff')";

最佳答案

您不需要为此使用两个查询,可以在INSERT查询中执行。

$query = "INSERT INTO boss (ID, Name, Type, Location, LocationID, Difficulty)
    SELECT '0', '$boss', '$type', '$loc', MAX(locationID)+1, '$diff'
    FROM boss";

10-07 22:10