@dmitriyuvin
FullStack developer ( Laravel & Vue )

Как сделать кнопку load more?

<?
			foreach($this->Products['items'] as $Product){?>
				<?include PATH_SNIPPETS.'product-item.php';
				
				?>
			<?}?>


Этот код выводит все товары, как мне вывести например 3 товара? - первый вопрос
Как сделать кнопку loadmore, чтобы загрузилось например 3 товара, а потом при клике на кнопку загрузились все остальные?

Любой код скину, какой надо
  • Вопрос задан
  • 715 просмотров
Решения вопроса 1
@RookDeveloper
У вас на фото php код, во-первых, нужно понять откуда берется $this->Products['items'] и сделать ограничение выборки.
Например, если $this->Products['items'] выдает 1000 товаров, то нужно сделать кодом ограничение, например, на 10 товаров и возможностью пропуска n элементов в начале. Соответственно, потом, сверстать кнопку загрузить еще и при нажатии на нее с помощью JS отправлять запрос на сервер с отступом. Например, 1-я страница - отступ (1-1) * 10 . Вторая (2-1) * 10. То есть когда будет вторая страница, php пропустит первые 10 элементов и возьмет как бы 10 после первых десяти... вообщем нужна кнопка, на нее нажимаете - отправляется запрос с номером страницы. В зависимости от номера страницы будет разный отступ и код выдает разные данные. Вы этот код через JS вставляете вместо старого. Соответственно, в вашем случае будет 3 товара выводиться и формула вывода изменится ( NUMBER_PAGE - 1) * COUNT.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
mad_maximus
@mad_maximus
Гуглите "аякс пагинация php, js".
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы