@ComPUCKter
Web-разработчик

Не получается поместить данные из формы в базу данных(mysql). Что делать?

Все работает нормально, когда я просто передаю значения в запросе mysql прямо в коде следующим образом
($db и execute созданы мной)

$db->execute("INSERT INTO `post-data` (`title`, `description`, `content`) VALUES ('любое значение', 'любое значение', 'любое значение');");


Но когда я делаю тот же запрос только уже со значениями, извлеченными из формы ->

$db = new Database();

if (isset($_POST['submit'])) {
   $title = $_POST['title'];
   $description = $_POST['description'];
   $content = $_POST['content'];

   $db->execute("INSERT INTO `post-data` (`title`, `description`, `content`) VALUES ($title, $description, $content);");
}


Появляется следующая ошибка : "Fatal error: Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'dsgf' in 'field list' "

(dsgf это то что я набрал в форме)

Заранее спасибо за все ответы, извините если вопрос глупый, а ответ очевиден.
  • Вопрос задан
  • 82 просмотра
Решения вопроса 2
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Да, очевиден: кавычки вокруг PHP-переменных все так-же нужны.

P.S. Ваш код не защищён от взлома через SQL-иньекции.
Ответ написан
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Кавычки забыли.
А лучше используйте подготовленные выражения с плейсхолдерами, оно гораздо безопаснее.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы