Переменная PHP MYSQL возвращает ошибку

0

Простой вопрос, но мой поиск не находит ответа. Я пытаюсь использовать переменную в поиске MySQL, и я продолжаю получать ошибку. Я знаю, что значение переменной хорошо, потому что, когда я передаю его прямо, он работает. Вот ошибка, которую я получаю

"Error: something went wrong: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Bank of CanadaGROUP BY YEAR(date), MONTH(date) DESC' at line "

$query = "SELECT * FROM current_rates WHERE 
financial_institution =". $lenderName .
"GROUP BY YEAR(date), MONTH(date) DESC";
Теги:

3 ответа

5

Строки в MySQL должны быть заключены в одинарные кавычки.

В противном случае они будут считаться зарезервированными именами слов/столбцов.

Исправленный SQL должен быть:

$query = "SELECT * FROM current_rates WHERE 
 financial_institution ='". $lenderName .
 "' GROUP BY YEAR(date), MONTH(date) DESC";

Также, согласно ответу от Bhaumik Mehta, вам нужно добавить пробел перед тегом GROUP BY.

3

Попробуйте этот запрос:

1) Вам нужно заключить $lenderName в '' поскольку это string значение.

2) Перед ключевым словом GROUP BY необходимо иметь место

$query = "SELECT * FROM current_rates WHERE financial_institution ='". $lenderName ."' GROUP BY YEAR(date), MONTH(date) DESC";
0

пожалуйста, укажите пробел между именем и группой

$query = "SELECT * FROM current_rates WHERE financial_institution ='".$lenderName."' GROUP BY YEAR(date), MONTH(date) DESC";

Ещё вопросы

Сообщество Overcoder
Наверх
Меню