准备好的语句会导致非对象错误

时间:2013-12-01 20:35:41

标签: php exception insert mysqli

使用此插入脚本:

$stmt = $mysqli->prepare("INSERT INTO table VALUES (?)");
$stmt->bind_param('s', $value); // echoing $value: 120.120
$stmt->execute();
$stmt->close();
$mysqli->close();

我收到此错误:

 Call to a member function bind_param() on a non-object 

我已经尝试过" s"," d"和"我"但没有人工作,任何人都可以帮助我?问候!

1 个答案:

答案 0 :(得分:0)

问题通常发生是因为

$mysqli->prepare("INSERT INTO table VALUES (?)");

不返回对象,这意味着prepare()无法应用您的定义。

当实际的SQL表实际上没有我想写的字段时,我常常看到bind_param非对象错误。请将您的查询与实际的SQL表进行比较,看看您尝试使用的所有字段是否实际上都是表的一部分。还要确保表名正确。