gpt4 book ai didi

php - 如何将 mySQL 的输出查询放入 php int 变量

转载 作者:行者123 更新时间:2023-11-29 02:48:15 27 4
gpt4 key购买 nike

我想做一个查询来获取表中的最后一个 id (int) 以创建一个具有最后一个 id + 1 的新行,但实际上这只是将所有具有相同 id 的行放在一起

我的代码:

<?php
$servername = "localhost";
$user = "root";
$pass = "dbpass";
$dbname = "site";
$mail = $_POST['mail'];
$password = $_POST['password'];

// Create connection
$conn = mysqli_connect($servername, $user, $pass, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}

$sqlID = "SELECT MAX(id) FROM `login`;";

if ($result = mysqli_query($conn, $sqlID)) {
$id = mysqli_fetch_row($result);
}

settype($id, "int");
$id = $id + 1;


$sql = "INSERT INTO login (`id`,`mail`,`password`)
VALUES ('".$id."','".$mail."','".$password."');";



if (mysqli_query($conn, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}

mysqli_close($conn);

?>

最佳答案

mysqli_fetch_row 总是返回一个数组,即使只有 1 个元素。所以 MAX(id) 在 $row[0] 中。

解决这个问题,你也不需要使用 settype。

关于php - 如何将 mySQL 的输出查询放入 php int 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39229293/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com