php 中bind_param()报错

xu739874260 2012-03-09 08:47:02
include_once("MyDB_class.php");
require('../Bean/appointment_class.php');
class AppointmentModle extends MyDB{
public function addAppointment($appointment){
$this->mysqli->query("set names gb2312");
$query="insert into db_appointment (A_title,A_time,A_content,A_author) values (?,?,?,?)";

$stmt=$this->mysqli->prepare($query);
$stmt->bind_param('sdss',$A_title,date("Y-m-d"),$A_content,$A_author); 报错 $A_title=$appointment->getA_title();
// $A_time=$appointment->getA_time();
$A_content=$appointment->getA_content();
$A_author=$appointment->getA_author();
//echo $A_title,$A_time,$A_author,$A_content;能正确输出内容
// exit;
$stmt->execute();
if($stmt->affected_rows!=1){
$this->printError("数据插入失败:".$stmt->error);
return false;
}
else{
return $this->mysqli->insert_id;

}
}

}
...全文
456 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
coder 2012-03-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xu739874260 的回复:]

能说明白点吗?提示出错Fatal error: Call to a member function bind_param() on a non-object in D:\PHP\wamp\www\ReporterStation\admin\AppointmentModel_class.php on line 18
[/Quote]
这只呢给你说明你
$this->mysqli->query("set names gb2312");
$query="insert into db_appointment (A_title,A_time,A_content,A_author) values (?,?,?,?)";

$stmt=$this->mysqli->prepare($query);
这几句有错误。
  • 打赏
  • 举报
回复
时间类型应该是字符串:"s"

$stmt->bind_param('ssss',$A_title,date("Y-m-d"),$A_content,$A_author);

表字段是否允许为空?$A_title,$A_content,$A_author有值吗?

参考:

function addInfor($ordPrice,$time,$sid,$cid){
$sql = "INSERT INTO mis_order(cid,sid,ordTime,ordPrice) VALUES(?,?,?,?);";
$stmt = $this->mysqli->prepare($sql);
$stmt->bind_param("iiss",$cid,$sid,$time,$ordPrice);
$stmt->execute();
$stmt->store_result();
$rows = $stmt->affected_rows;
if($rows > 0){
header("location:sysAction.php?index=0");
}else{
echo "订单信息添加失败!<br/>";
}
$stmt->close();
$this->mysqli->close();
}
franzhong 2012-03-12
  • 打赏
  • 举报
回复
$this->mysqli->prepare($query);
这个函数返回的值里没有
bind_param这个方法
xuzuning 2012-03-10
  • 打赏
  • 举报
回复
次序问题
//echo $A_title,$A_time,$A_author,$A_content;能正确输出内容
但你在 $stmt->bind_param('sdss',$A_title,date("Y-m-d"),$A_content,$A_author);
这些变量并不存在呀
libo_sina 2012-03-10
  • 打赏
  • 举报
回复
没得错误代码,给出错误提示!
xu739874260 2012-03-10
  • 打赏
  • 举报
回复
能说明白点吗?提示出错Fatal error: Call to a member function bind_param() on a non-object in D:\PHP\wamp\www\ReporterStation\admin\AppointmentModel_class.php on line 18

20,393

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧