【发布时间】:2015-02-02 17:58:26
【问题描述】:
我试图为用户制作可编辑的个人资料。他们点击编辑按钮(form-post)返回带有可编辑信息的页面(仅当 isset($_POST["edit"]) 在文本区域、输入和“完成编辑”按钮时。 当我单击完成编辑时。它需要启动将新信息更新到数据库的功能。但它没有更新它的返回错误:
Call to a member function bind_param() on a non-object
我的代码:
if(isset($_POST["cedit"]) && !empty($_POST["fn"]) && !empty($_POST["ln"]) && !empty($_POST["desc"])){
if($stmtq = $mysqli->prepare("UPDATE `sites`.`accounts` SET `fullname` = ? ,`description` = ? WHERE `id` = ? ") && !empty($_POST["fn"]) && !empty($_POST["ln"]) && !empty($_POST["desc"])){
$stmtq->bind_param("ssd", $_POST["fn"]." ".$_POST["ln"], $_POST["desc"], $_SESSION["user_id"]);
$stmtq->execute();
$stmtq->close();
}
}
【问题讨论】:
-
在
prepare()之后执行print_r($stmtq);。还要检查错误日志并将error_reporting(E_ALL);添加为脚本中的第一件事 -
Marcin the print_r($stmtq) 返回数字 1。