php声明问题。 (mysqli的)

时间:2011-05-19 09:54:51

标签: php mysqli

$db = new mysqli('localhost','root','nere','deneme');

if ($db->error)
exit();

$stmt = $db->prepare("INSERT INTO deneme VALUES (?,?,?)");

$stmt->bind_param('ssi',$adi,$soyadi,$no);

$adi='recep';
$soyadi='saban';
$no=5;

$stmt->execute();

我收到了错误。

Fatal error: Call to a member function bind_param() on a non-object in C:\wamp\www\rock\index.php on line 10

我做错了什么?

2 个答案:

答案 0 :(得分:2)

它应该是下面的东西。此外,您应该在将值传递给bind_param()

之前将值分配给变量
if ($db->error)
exit();

if ($stmt = $db->prepare("INSERT INTO deneme VALUES (?,?,?)")) {
$adi='recep';
$soyadi='saban';
$no=5;

$stmt->bind_param('ssi',$adi,$soyadi,$no);


$stmt->execute();
}

告诉您应该在数据库中填充哪些列是个好主意:

INSERT INTO deneme (column1, column2, column3) VALUES (?,?,?)

答案 1 :(得分:1)

看起来你的prepare语句失败了,$ stmt是假的(你应该在那里添加一些检查)。表deneme真的存在吗?