[英]Fatal error: Call to a member function bind_param() on a non-object error
[英]FATAL ERROR : Call to a member function bind_param() on a non-object
我尝试一些代码来使用PHP和slim框架构建RESTful API Web服务。 (我正在使用Advanced Rest Client测试此代码)
这是我的代码。
private function isUserExists($email) { $stmt = $this->conn->prepare("SELECT id from users WHERE email = ?"); $stmt->bind_param("s", $email); $stmt->execute(); $stmt->store_result(); $num_rows = $stmt->num_rows; $stmt->close(); return $num_rows > 0; }
然后我得到了这个错误。
致命错误:在第113行上的非对象上调用成员函数bind_param()
第113行是: $stmt->bind_param("s", $email);
从2周前开始,我一直在寻找解决方案。
谢谢大家:))
问题出在$this->conn->prepare
,它不会像您期望的那样返回对象。
对于mysqli, prepare()在错误时返回FALSE。 您可以使用$ this-> conn-> error检查错误消息。
如果失败,此代码应显示您的错误:
private function isUserExists($email) {
$stmt = $this->conn->prepare("SELECT id from users WHERE email = ?");
if ($stmt === FALSE){
die($this->conn->error);
} else {
$stmt->bind_param("s", $email);
$stmt->execute();
$stmt->store_result();
$num_rows = $stmt->num_rows;
$stmt->close();
return $num_rows > 0;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.