Possible Duplicate:
Call to a member function bind_param() on a non-objectPHP MySQL的预处理语句错误
,我发现了以下错误:
Call to a member function bind_param() on a non-object
这里是准备好的声明:
include('/path/to/connection/variable.php');
该文件被证实是工作,它只是创造mysqli类的一个实例,例如:
$mysqli = new mysqli("localhost", "user", "password", "db");
所以我知道这不是问题......
$stmt = $mysqli->prepare("INSERT INTO `users` VALUES (?,?,?,?,?,?,?)");
$stmt->bind_param("sssssss", $firstname, $lastname, $email, $subscribed, $signup_date, $unsubscribe_date, $signup_source);
$stmt->execute();
$stmt->close();
$mysqli->close();
变量类型如下:
$firstname = string
$lastname = string
$email = string
$subscribed = char (Y or N)
$signup_date = DATE - date('Y-m-d')
$unsubscribe_date = DATE - 0000-00-00 Entered Initially
$signup_source = string
我试图找到所有通常的嫌疑人,检查连接,基本上我写了一个单独的SELECT语句,它的工作原理。 “用户”是一个有效的表格。连接的权限是root,所以这不是问题。我已经在“s”和“d”之间切换了日期类型,甚至用虚拟变量尝试了所有内容 - 没有区别。
我希望这是一件简单的事情 - 因为我现在在过去的一个小时里一直在绞尽脑汁,而且我看不到上面的语句有什么问题。
啊 - 我收到''上FALSE'的var_dump($语句)',这是何等的混乱我,因为该语句有正确的语法,这是一个正确的表,并且字段计数是正确的,等等。 –
编辑:我发现问题 - 我错过了一个插入字段 - 该死的时候我讨厌它是如此简单。 ...在一个相关的,因为我不是最好的与mySQL有一种方法,我可以针对INSERT只有几个领域 - 即排除在语句中的尾部字段? –