Столбец не найден: 1054 неизвестных столбца, но столбец tge существует

#php #mysql #mysql-error-1054

#php #mysql #mysql-ошибка-1054

Вопрос:

в моем php-файле я запускаю следующий код :

 $reponse = $bdd->query('SELECT * FROM `bcpd` WHERE `bcpdID`=' . $bcpdID);
  

где bcpdID могут быть только цифры или символы. Проблема в том, что когда bcpdID это число, код работает, но когда есть буквы, он показывает ошибку 1054 .

Я не эксперт в PHP и MySQL, поэтому я был бы благодарен за вашу помощь.

Комментарии:

1. но когда есть буквы, отображается ошибка 1054 1) Строковый литерал должен быть заключен в одинарные кавычки в окончательном тексте запроса. 2) Вы должны процитировать сообщение об ошибке полностью — рассказ об этом бесполезен.

2. Давайте посмотрим, когда в MySQL возникает ошибка #1054. При вставке значения varchar, если вы забудете добавить одинарные кавычки, то возникнет эта ошибка. Смотрите tutorialspoint.com /…

3. Ваш запрос должен быть чем-то вроде $reponse = $bdd->query("SELECT * FROM bcpd WHERE bcpdID='" . $bcpdID."'");

4. @UmairKhan нет, пожалуйста, НИКОГДА. Используйте подготовленные инструкции, никогда не рекомендуйте что-либо еще, что является небезопасным и приводит к SQL-инъекциям

Ответ №1:

Попробуйте это

 $reponse = $bdd->query("SELECT * FROM `bcpd` WHERE `bcpdID`= '$bcpdID'");  
  

Комментарии:

1. Нет, пожалуйста, НИКОГДА не используйте такой запрос. Используйте подготовленные инструкции, никогда не рекомендуйте что-либо еще, что небезопасно и приводит к SQL-инъекциям