Исходные значения:
$limit = 5;
$page = intval($page);
$offset = ($page - 1) * self::SHOW_BY_DEFAULT;
Есть следующий запрос:
$result = mysqli_query($db, "SELECT * FROM products WHERE status = '1' AND category_id = '$categoryId' ORDER BY id ASC LIMIT ".$limit.' OFFSET'. $offset);
Ошибка идет после LIMIT
. Как правильно сформировать запрос, который выводит записи с ограниченным количеством и отступом, который храниться в переменной $offset
Запросы, в которых участвуют переменные, надо формировать с помощью подготовленных выражений. Это гарантирует отсутствие ошибок, вызываемых передаваемыми данными, не говоря уже о защите от инъекций.
$sql = "SELECT * FROM products WHERE status = '1' AND category_id = ? ORDER BY id ASC LIMIT ? OFFSET ?";
$stmt = $db->prepare($sql);
$stmt->bind_param("sii", $categoryId,$limit,$offset);
$stmt->execute();
$result = $stmt->get_result();
Фрилансер или Digital-агентство - Как сделать правильный выбор?
Добрый день! Скопирован текст с инстаграм, включающий Emoji:
Добрый деньЕсть следующий код php: