Независимо от того, используете ли вы плагин или jQuery в этом отношении, вы должны разбивать их на сервер с помощью запроса к БД, а не выбирать Everythign и затем разбивать на страницы данные. Это можно сделать, используя LIMIT
и OFFSET
в запросе.
Сначала сделайте запрос qount, чтобы определить, какие есть записи о человеке:
SELECT COUNT(*) AS nb_records FROM your_table;
Теперь у вас есть все записи, доступные для запроса. И вы можете выяснить, сколько у вас всего страниц, основываясь на том, сколько записей вы хотите на страницу, примерно так в php:
$pages = ceil($nb_records/$max_per_page);
Так что теперь, когда вы поняли это, вы можете использовать параметр номера страницы, переданный из запроса, чтобы определить начальное смещение записей для этой страницы и запрос данных. Например, если вы переходите на страницу 2, и общее количество записей составляет 100, а для каждой страницы требуется 10, можно рассчитать, что смещение для начала страницы 2 составляет 20 ($max_per_page*$page = $offset
) для выполнения запроса:
SELECT * FROM your_table LIMIT 20 OFFSET 40;
Так что, если мы говорим на внешнем интерфейсе ajax, вы бы запросили страницу, выполняющую запрос с номером страницы, примерно так:
$.ajax({
url: 'page/that/makes/query.php'
type: 'get',
data: {"page": 1} // or whatever page}
success: function(data){}
});
Затем будет возвращена либо полная HTML-разметка для «страницы» записей, либо объект данных (JSON, XML), содержащий сведения о каждой записи, которую вы будете использовать для создания HTML.