Я прохожу видеоурок о создании меню с использованием БД. Вместо того, чтобы делать это с процедурным PHP, как в видео, я попытался сделать это с помощью готовых операторов в стиле ООП. Это не работает, и я не могу понять, почему.
Он работает нормально до строки 17, где он умирает с этой ошибкой:
Fatal error: Call to a member function bind_param() on a non-object in C:\wamp\www\widget_corp\content.php on line 17
А вот код:
<?php
$query = $connection->prepare('SELECT menu_name, id FROM subjects ORDER BY position ASC;');
$query->execute();
$query->bind_result($menu_name, $sid);
while ($query->fetch()){
echo "<li>{$menu_name} {$sid}</li>";
$query2 = $connection->prepare('SELECT menu_name FROM pages WHERE subject_id = ? ORDER BY position ASC;');
$query2->bind_param("i", $sid); //This is line 17
$query2->execute();
$query2->bind_result($menu_name);
echo "<ul class='pages'>";
while ($query2->fetch()){
echo "<li>{$menu_name}</li>";
}
echo "</ul>";
}
$query->close();
?>
Разве невозможно сделать подготовленный оператор в stmt-> fetch ();?