PHP MySQL нумерация страниц / бесконечная прокрутка

Я создал галерею для своего сайта и решил использовать JQuery бесконечный свиток плагин (например, стена в фейсбуке) в моей галерее.

Все данные поступают из базы данных PHP MyAdmin. У меня вопрос, как получить данные для бесконечной прокрутки из базы данных? Все мои коды работают без проблем.

  • База данных: галерея
  • Структура таблицы для таблицы: сообщений

index.php:

<?php
include ("connect_database.php");

$select_post = "SELECT * FROM posts ORDER BY rand() LIMIT 5";

$run_posts = mysql_query($select_post);

while ($row=mysql_fetch_array($run_posts)) {

$post_id = $row['post_id'];
$post_date = $row['post_date']; //.etc here
?><div id="container">

<!-- gallery codes here and five thumbnails are randomly loading on homepage -->

</div><!--Next page for INFINITE SCROLL-->

<nav id="page-nav">
<a href="next-page.php"></a> <!--please check script.js-->
</nav>

Следующая страница загружается без проблем, когда я добавляю html или php файл в <nav> теги. Но мне нужно создать новый файл php / html для каждой загрузки. У меня есть идея загрузить следующие 5 миниатюр без создания нового файла. Мне нужно получить следующие пять миниатюр для бесконечной прокрутки из базы данных.

script.js:

var $container = $('#container');
$container.infinitescroll({
// infinite scroll options...
navSelector  : "#page-nav",
// selector for the paged navigation (it will be hidden)
nextSelector : "#page-nav a:first",
// selector for the NEXT link (to page 2)
itemSelector : "#container .box",
// selector for all items you'll retrieve
extraScrollPx: 10,
}
);

1

Решение

Если вы хотите, чтобы при каждой прокрутке загружалось 5 случайных записей, вам не нужно отличать один запрос от другого (например, номер страницы).

Хотя я не рассматриваю это как жизнеспособное решение, потому что вы получите дублирующиеся записи (вы решаете, является ли это проблемой или нет), вы можете использовать опцию «путь», чтобы вызвать следующую страницу, как в примере ниже.

$container.infinitescroll({
// infinite scroll options...
navSelector  : "#page-nav",
// selector for the paged navigation (it will be hidden)
nextSelector : "#page-nav a:first",
// selector for the NEXT link (to page 2)
itemSelector : "#container .box",
// selector for all items you'll retrieve
extraScrollPx: 10,
path: function(index){
return "index.php?page=" + index;
}
}
);

Тогда, конечно, вам придется настроить файл index.php для правильной обработки параметра страницы. Тем не менее, опять же, имея случайные результаты, вам не понадобится параметр ‘page’, а скорее всегда будет возвращать «index.php» внутри функции path, и все должно работать нормально.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]