我上面的代码给了我一个在非对象上调用成员函数bind_param()的消息" . 我真的不明白为什么我得到这个错误.我有正确的列名.
my above code gave me a "Call to a member function bind_param() on a non-object" error. I really don't get it why i getting this error. I have correct cols name.
我是mysqli的新手,想学习如何调试此类错误.
I am new to mysqli and would like to learn how to debug such error.
推荐答案
Call to a member function bind_param() on a non-object表示您要在其上调用bind_param 的$stmt不是对象.为什么它不是对象?因为$mysqli->prepare没有返回对象.为什么它不返回对象?
Call to a member function bind_param() on a non-object means that $stmt, which you're trying to call bind_param on, is not an object. Why is it not an object? Because $mysqli->prepare did not return an object. Why did it not return an object?
mysqli_prepare()返回语句对象;如果发生错误,则返回FALSE. www.php/manual/en/mysqli.prepare.php
mysqli_prepare() returns a statement object or FALSE if an error occurred. www.php/manual/en/mysqli.prepare.php
因此,这意味着必须发生错误.您应该打开 error_reporting ,这可能会告诉您,或者检查 $mysqli->error() ,它也可能会告诉您.
So that means an error must have occurred. You should turn on error_reporting, which will probably tell you, or examine $mysqli->error(), which may tell you as well.
更多推荐
调用非对象上的成员函数bind
发布评论