У меня есть следующий код:bind_param() не похоже на работу
<?php
$dbhost = 'localhost';
$dbuser = 'user';
$dbpass = 'password';
$db = new mysqli($dbhost, $dbuser, $dbpass, 'images_db');
if($db->connect_errno > 0){
die('Unable to connect to database [' . $db->connect_error . ']');
}
else{
echo "Connected to database";
}
//filename, mime_type and file_size are columns in the table images
$stmt = $db->prepare("INSERT INTO images (filename, mime_type, file_size) VALUES (?, ?, ?)");
$string1 = 'string 1';
$string2 = 'string 2';
$stmt->bind_param('ssi', $string1, $string2, 123);
$stmt->execute();
$stmt->close();
$mysqli->close();
?>
Когда я выполняю код, ничто не добавляется в базу данных MySQL. Но когда я закомментируйте строку
$stmt->bind_param('ssi', $string1, $string2, 123);
и вставить значения строки и целые непосредственно в $ db-> подготовить заявление (заменив знаки вопроса), то все работает хорошо, и строка добавляется в таблицу базы данных ,
Что я делаю неправильно в строке bind_param, которая препятствует добавлению новой строки в базу данных?
do printf (ошибка «ошибка:% s. \ N», $ stmt->); после выполнения execute(), чтобы увидеть какие-либо ошибки ..! –
Ошибок здесь нет после выполнения(). – woodwardmw