编写预准备语句以从表中检索数据(致命错误)

时间:2017-07-06 16:18:24

标签: php mysql prepared-statement

我有一个名为候选人的表,有一些字段。该表包含一个名为“keypass”的列,对所有用户都是相同的,并设置为默认值。使用预处理语句我试图首先捕获密钥传递的值(对于此示例是相同的)并将其与用户输入进行比较。

连接

<?php 
$dbServerName = "localhost"; 
$dbUserName = "root"; 
$dbPassword = ""; 
$dbName = "candidateDB"; 
$conn = mysqli_connect($dbServerName,$dbUserName,$dbPassword,$dbName‌​); 

这是我的代码:

$stm_keypass = $conn ->prepare ("SELECT * FROM candidates WHERE keypass = ?");
$stm_keypass -> bind_param("s", $keypass);
$sql_keypass = $stm_keypass->execute();

当我运行脚本时,我收到此错误“致命错误:在非对象上调用成员函数bind_param()”是什么问题?感谢

table here

1 个答案:

答案 0 :(得分:1)

&#34;致命错误:在非对象上调用成员函数bind_param()&#34;这意味着您的$stm_keypass可能无法正确创建,因此不是对象。查看docs如何处理准备好的语句的错误检测并从那里开始。