Как правильно вывести параметры с базы, с пагинацией
Вот функция с необходимыми параметрами, как мне правильно вывести в SELECT с сортировкой в обратном порядке? Вот допустим строка:
$sql = "SELECT * FROM $table ORDER BY id DESC LIMIT $limit OFFSET $offset";
Таким образом не работает
function selectBlogsFromPostsOnIndex($table, $limit, $offset){
global $pdo;
$sql = "SELECT * FROM $table ORDER BY id DESC ";
$query = $pdo->prepare($sql);
$query->execute();
dbCheckError($query);
return $query->fetchAll();
}
Ответы (1 шт):
Автор решения: Данил Колоколов
→ Ссылка
- Для начала правильно подметил Semyon Bayandin в комментариях, что
global $pdo;
нужно вынести в самое начало инициализации вашего проекта и не в таком формате, а передавать зависимость туда, когда вам нужно
- Вы не указали limit и offset в вашем sql
$sql = 'SELECT *
FROM :table
ORDER BY id DESC
LIMIT :limit OFFSET :offset';
$query = $pdo->prepare($sql, [PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY]);
$query->execute(['table' => $table, 'limit ' => $limit, 'offset' => $offset]);
см.документацию: https://www.php.net/manual/ru/pdo.prepare.php