Php Bind_param()错误
当我运行代码时,出现以下错误:Php Bind_param()错误,php,mysqli,sqlbindparameter,Php,Mysqli,Sqlbindparameter,当我运行代码时,出现以下错误: Error: Call to a member function bind_param() on a non-object 我在谷歌上搜索了几个小时这个问题,但我不知道问题出在哪里。我知道这个主题被贴了很多次,但我是php初学者,我不明白为什么这不起作用 这是我使用的代码: 类别: class Item { private $iname; function __construct($name) { $this->i
Error: Call to a member function bind_param() on a non-object
我在谷歌上搜索了几个小时这个问题,但我不知道问题出在哪里。我知道这个主题被贴了很多次,但我是php初学者,我不明白为什么这不起作用
这是我使用的代码:
类别:
class Item {
private $iname;
function __construct($name)
{
$this->iname = $name;
}
public function addItem()
{
global $mysqli, $db_table_prefix;
$stmt = $mysqli->prepare("INSERT INTO ".$db_table_prefix."items (
iname,
VALUES (
?
)");
$stmt->bind_param("s", $this->iname);
$stmt->execute();
$inserted_id = $mysqli->insert_id;
$stmt->close();
}
}
及投寄表格页:
require_once("models/config.php");
if(!empty($_POST))
{
$item_name = trim($_POST["iname"]);
$item = new Item($item_name);
$item->addItem();
}
require_once("models/header.php");
echo "
<body onload='initialize()'>
<div id='wrapper'>
<div id='top'><div id='logo'></div></div>
<div id='content'>
<h>Add new Item</h>
<div id='main'>
<div id='regbox'>
<form name='newItem' action='".$_SERVER['PHP_SELF']."' method='post'>
<p>
<label>Item description:</label>
<input type='text' name='iname' />
</p>
<input type='submit' name='Submit' value='Add Item'/>
</form>
</div>
</div>
</div>
</div>
</body>
</html>";
?>
require_once(“models/config.php”);
如果(!空($\u POST))
{
$item_name=trim($_POST[“iname”]);
$item=新项目($item\u name);
$item->addItem();
}
需要_一次(“models/header.php”);
回声“
添加新项目
项目说明:
";
?>
您有一个SQL语法错误:
INSERT INTO ".$db_table_prefix."items (
iname,
VALUES (
?
)
这应该是:
INSERT INTO ".$db_table_prefix."items (
iname)
VALUES (
?
)
由于语法错误,$stmt对象未创建,因此在非对象上调用成员函数bind_param()时出现错误
如果出现问题,请始终输出MySQL错误消息:
echo $mysqli->error;
错误是什么?在非对象上调用成员函数bind_param(),在何处创建$mysqli对象?(mysql连接)我现在觉得自己很愚蠢,但是自从我一周前开始学习PHP后,我就给自己一个通行证:)谢谢,伙计