Php 将准备好的语句与不同的mysqli调用相结合

Php 将准备好的语句与不同的mysqli调用相结合,php,mysqli,Php,Mysqli,我试图使用下面准备好的陈述: $stmt = $mysqli->prepare("SELECT DISTINCT primaer FROM oevelser"); $stmt->bind_param("s", $primary); $stmt->execute(); 当使用DISTINCT时,我希望只得到一个结果pr.行,从而很好地匹配变量类型和变量的数量,但我得到了错误:“变量的数量与准备语句中的参数数量不匹配” 有什么想法吗?当您的查询没有指定参数时,您正

我试图使用下面准备好的陈述:

$stmt = $mysqli->prepare("SELECT DISTINCT primaer FROM oevelser");
    $stmt->bind_param("s", $primary);
    $stmt->execute();
当使用DISTINCT时,我希望只得到一个结果pr.行,从而很好地匹配变量类型和变量的数量,但我得到了错误:“变量的数量与准备语句中的参数数量不匹配”


有什么想法吗?

当您的查询没有指定参数时,您正在传递一个参数。一个有效的选项如下所示:

$stmt = $mysqli->prepare("SELECT DISTINCT primaer FROM oevelser WHERE primary=?");
$stmt->bind_param("s", $primary);
$stmt->execute();

抱歉,我的意思是:当命名一个不同的列时,我希望结果是pr。行-不同与此无关,我猜…您的查询中没有任何参数。请删除绑定参数,然后重试。-你没有使用占位符,这正是准备好的陈述的全部内容;这就是你的代码失败的原因。请查看手册和谷歌“mysqli准备的语句示例”。这和“答案”一样好。@DerVO-你完全正确-不知道是否有办法“奖励”某人的评论(与答案相反…,但你做到了-thx:)@ksealy,谢谢你引导我走上正确的道路-实际上我需要删除bind_参数,因为我的查询不需要。