0

我收到一个错误,我不知道为什么它给了我这个错误。我一直在查看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 <== 错误消失正如您的常识所建议的那样,我需要删除 WHERE 部分中的引号。我做到了,现在错误消失了。吉皮杰。

4

1 回答 1

0

不要引用你的占位符

'SELECT * FROM cypg8_overzicht WHERE id=?'
于 2013-09-03T11:10:07.143 回答