Делаю мультиязчность для сайта, есть запрос к дб:
$result = $db->query("SELECT id, title, date, short_content, thumbnail, cat, status FROM news ORDER BY date DESC LIMIT 10");
Надо добавить переменную с ключом языка +нижнее подчеркивание + news. Не могу соорудить запрос. Кто может, помогите. В итоге должно быть ru_news, en_news
$locale = trim(strip_tags($locale));
echo $locale;
$db = Db::getConnection();
$newsList = array();
$result = $db->query("SELECT id, title, date, short_content, thumbnail, cat, status FROM `".$locale."`_news ORDER BY date DESC LIMIT 10");
Наверное нужно так:
"SELECT id, title, date, short_content, thumbnail, cat, status
FROM `".$locale."_news`
ORDER BY date DESC
LIMIT 10"
В двойных кавычках, емнип, можно было так:
"SELECT id, title, date, short_content, thumbnail, cat, status
FROM `{$locale}_news`
ORDER BY date DESC
LIMIT 10"
Ошибка была в
`".$locale."`_news
^----
а нужно
`".$locale."_news`
^----
Как правильно отметили в комментарии: посмотрите как правильно делать, когда хотите добавить пользовательскую подстановку в качестве выборки имени таблицы: https://ru.stackoverflow.com/a/745907/191482 (про белый список)...
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости