mysqli绑定param变量的数量错误

时间:2013-09-03 11:08:05

标签: php mysql mysqli

我收到错误,我无法找出它为什么会给我这个错误。我一直在看http://php.net/manual/en/mysqli-stmt.bind-param.php,而我可以找到的是我使用正确的代码。我从SO上的帖子收到了这段代码。这是有问题的代码。

$con = mysqli_connect($server,$username,$password,$database);
if (!$con){
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con,$database);

$id=$_GET['id'];
if($data = mysqli_prepare($con, 'SELECT * FROM cypg8_overzicht WHERE id="?"'))
{

mysqli_stmt_bind_param($data, "s", $id);

mysqli_stmt_execute($data); 
$data2 = mysqli_stmt_fetch($data);
}

我收到的错误如下:

警告:mysqli_stmt_bind_param():变量数与第33行中预准备语句中的参数数不匹配。第33行:

mysqli_stmt_bind_param($data, "s", $id);

非常感谢任何帮助。

编辑1 < ==错误消失了 正如您的Common Sence所建议的,我需要删除WHERE部分中的引号。我做了,现在错误消失了。 Jippiejay。

1 个答案:

答案 0 :(得分:0)

不要引用占位符

'SELECT * FROM cypg8_overzicht WHERE id=?'