Приветствую господа, вот есть у меня запрос к базе данных, как подставить в данный запрос переменную в которой храниться имя таблицы в базе PHP: $result = $pdo->query('SELECT * FROM $catalog[0]')->fetchAll(PDO::FETCH_ASSOC); я уже по всякому пробовал но не выходить, даже использовал другой тип запроса но и он не срабатывает PHP: $dump =$pdo->prepare("SELECT*FROM $catalog[0] ORDER BY `name`"); $dump ->execute(); $array =$dump ->fetchAll(PDO::FETCH_ASSOC); Мне нужно получить все строки с данной таблицы, заранее спасибо --- Добавлено --- Собственно текст ошибки: Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 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 'ORDER BY `id` = ?' at line 1 in C:\OSPanel\domains\localhost\catalog.php:236 Stack trace: #0 C:\OSPanel\domains\localhost\catalog.php(236): PDO->prepare('SELECT * FROM ...') #1 C:\OSPanel\domains\localhost\catalog.php(89): page_sourse_3('<!DOCTYPE html>...', 'acm001') #2 {main} thrown in C:\OSPanel\domains\localhost\catalog.php on line 236
Не срабатывает, попробовал так: PHP: $result = $pdo->query(sprintf('SELECT * FROM `%s` ORDER BY `name`', $catalog[0]))->fetchAll(PDO::FETCH_ASSOC);
ОК. Скопируйте выведенный с помощью Код (Text): echo sprintf('SELECT * FROM `%s` ORDER BY `name`', $catalog[0]); и выполните его в PMA.
$cat = $catalog[0] $dump =$pdo->prepare("SELECT*FROM 'cat' = ?"); $dump ->execute([$cat]); $array =$dump ->fetchAll(PDO::FETCH_ASSOC);[/php] Не тестил, так что по итогу может будет шляпа )
@BAbl_gun, за лайк в др. теме так уж и быть протру вам глаза У ТСа просто FROM `cat`, а то что вы подумали – это выборка с условием FROM `cat` WHERE `cat_field`=?