IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Веб-программирование (https://www.imho.ws/forumdisplay.php?f=29)
-   -   Как вывести таблицу на экран и реализовать ссылки "предыдущие 20" и "следующие 20"? (https://www.imho.ws/showthread.php?t=98568)

n0nam3 13.01.2006 01:05

Как вывести таблицу на экран и реализовать ссылки "предыдущие 20" и "следующие 20"?
 
Глупый вопрос, знатоки, конечно, посмеются, но тем не менее.

Есть таблица в MySQL на несколько сот строк. Есть необходимость вывести эту таблицу на экран, но не все сотни строк, а допустим по 20 строк на страницу. Ясно, что это делается примерно так $sql = "SELECT * FROM table LIMIT 0, 20" Как сделать так, чтобы при нажатии на ссылки вида "предыдущие 20" и "следующие 20" из таблицы брались и показывались на экране предыдущие (следующие) 20 строк. Очевидно, что необходимо, чтобы параметры LIMIT передавались в переменные при нажатии на ссылку, но как это реализовать конкретно? Подскажите, желательно с реальными примерами и комментариями для чайников (т.е. для меня :) Заранее благодарен и т.д. и т.п. и зпт.

nemur 13.01.2006 01:30

Конкретная реализация зависит от того, на чем ты пишешь, но я думаю, между Perl / PHP / ... в данном случае невелика разница. Например, http://phpfaq.ru/paginator

Ghost 13.01.2006 07:46

Страницы:
предыдущая: bla-bla-bla.php?page=1
текущая: bla-bla-bla.php?page=2
следующая: bla-bla-bla.php?page=3

В скрипте:
PHP код:

$page $_GET['page'];
if (!
$page$page 1;
$limit = ($page 1) * 20;
$query "SELECT * FROM table LIMIT ".$limit.", 20"

Количество строк опрделешь запросом:
Код:

SELECT COUNT(*) FROM table
Количество страниц: int((all_str - 1) / 20) + 1, где all_str - количество всех строк в таблице.

n0nam3 14.01.2006 15:18

благодарю, тему можно закрывать.


Часовой пояс GMT +4, время: 23:56.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.