$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
что я делаю неправильно?
это должно быть что-то вроде ниже. Также вы должны назначить значения переменным, прежде чем передавать их в 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 (?,?,?)
Похоже, что ваш оператор подготовки не работает, а $ stmt является ложным (вы должны добавить некоторые проверки там). Действительно ли существует таблица deneme?