Трассировка стека
$link = mysqli_connect('localhost', 'root', '', 'message_id');
if (empty($_POST['name'])) exit("Поле не заполнено");
if (empty($_POST['content'])) exit("Поле не заполнено");
$query = "INSERT INTO message VALUES (NULL, :name, NOW())";
$msg = $link->prepare($query);
$msg->execute(['name' => $_POST['name']]);
$msg_id = $link->lastInsertId();
$query = "INSERT INTO message_content VALUES (NULL, :content, :message_id)";
$msg = $link->prepare($query);
$msg->execute(['content' => $_POST['content'], 'message_id' => $msg_id);
header("Location: index.html");
Как пофиксить ошибку
Fatal error: Uncaught Error: Call to a member function prepare() on boolean in W:\domains\Message\addmessage.php:8 Stack trace: #0 {main} thrown in W:\domains\Message\addmessage.php on line 8
пользуюсь OpenServer
Ответы (1 шт):
Автор решения: Ivan Dudarev
→ Ссылка
Функция mysqli_connect вернула false вместо соединения. Проверьте параметры подключения к БД, проверьте саму БД