我遇到从php mysql_
切换到mysqli_
的问题。我是根据PHP文档编写的,但我一直收到错误:
if($stmt = $mysqli->prepare("SELECT * FROM $tbl_name WHERE MATCH(DESCRIPTION) AGAINST ('?') LIMIT $start, $limit")) {
$stmt->bind_param('s', $search);
$stmt->execute();
$stmt->bind_result($vlink, $ilink, $des, $rating, $site);
}
它说:
mysqli_stmt :: bind_param():变量数与预准备语句中的参数数量不匹配“。
但是我只有一个问号,所以我不明白为什么它不起作用
答案 0 :(得分:0)
您所做的实际上是将?
称为'?'
,将其转换为字符串。所以你需要做的就是摆脱它,这就是你做的事情
SELECT * FROM $tbl_name WHERE MATCH(DESCRIPTION) AGAINST (?) LIMIT $start, $limit"