Показать сообщение отдельно
  #4 (permalink)  
Старый 19.11.2015, 17:19
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Всего в базе Mn записей, определено выводить по Kn = 20 записей, определяемых номером страницы Pg (постраничная навигация). Для этого служит LIMIT

SELECT .... FROM table ORDER BY field LIMIT Kn * Pg, Kn

Клиент запрашивает первый раз сервер, при этом номер страницы не определен и равен 0, значит получаем с первые 20 записей: 0 - 20, а номер следующей страницы 1 возвращаем клиенту, который он уже должен передать следующим запросом, будут запрошены следующие 20 записе1 начиная с 20 (1 * 20, 20), и возвращаем клиенту номер следующей страницы - 2, и т.д. Перед запросами нужно знать общее количество записей (или записей по условию), и если достигнут конец записей, не превышать лимита, устанавливая последний номер страницы.
Ответить с цитированием