我正在尝试使用
mysqli_stmt_bind_param
使用 php 脚本将信息更新到我的数据库,但显然变量的数量与声明中准备的变量不匹配。
$sql = "INSERT INTO veiculo (IDProduto_Veiculo, NIFProprietario_Veiculo, TipoVeiculo, NmrLugares, Modelo, Marca, Fotografia_Veiculo) VALUES (?, ?, ?, ?, ?, ?, ?)";
$stmt = mysqli_prepare($con, $sql);
mysqli_stmt_bind_param($stmt, "iisssss", $random_id, $_SESSION['NIF'], $tipo_veiculo, $numero_lugares, $modelo, $marca, $target_file_name);
mysqli_stmt_execute($stmt);
在这些代码行之间我有一些验证来创建“random_id”,但在那之后,我有验证给我这个错误,我似乎无法找到它为什么不正确:
if (!mysqli_stmt_execute($stmt)) {
die("Statement execution failed: " . mysqli_stmt_error($stmt));
}
我已经尝试将
"iisssss"
更改为 sssssss
尽管这没有多大意义,因为前两个参数是整数。除此之外,我看不出这个问题是从哪里来的。
$numero_lugares 是整数吗?也许您需要“iisisss”作为第二个参数。