@dind

Где syntax error у меня в запросе mysql?

mysql_query(INSERT INTO `listings` (`body`,`date_added`, `date_expired`, `status`) VALUES($data, $date_added, $date_expired, $status));
Пытаюсь таким образом загнать данные в БД, но получаю ошибку. Где моя ошибка?
  • Вопрос задан
  • 2290 просмотров
Решения вопроса 1
samoilenkoevgeniy
@samoilenkoevgeniy
Lead Full-Stack Web Developer
Поставьте все переменные в ' ' (Одинарные кавычки).
И все переменные прогоняйте через mysql_real_escape_string (Если без PDO работаете).

А проблема в том, что запрос нужно передавать как строку, т.е. вот так:
mysql_query("INSERT INTO `listings` (`body`,`date_added`, `date_expired`, `status`) 
VALUES($data, $date_added, $date_expired, $status)");
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
Если уж Вы используете устаревший mysql вместо mysqli - надо во первых значения переменных оборачивать в кавычки, во вторых использовать mysql_real_escape_string

mysql_query ( 'INSERT INTO `listings` ( `body`, `date_added`, `date_expired`, `status`) VALUES ( "'.mysql_real_escape_string($data).'", "'.mysql_real_escape_string($date_added).'", "'.mysql_real_escape_string($date_expired).'", "'.mysql_real_escape_string($status).'")');
Ответ написан
Комментировать
popcorn2d
@popcorn2d
Гар-гар-гар
Пробела мб нету после VALUES?
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы