Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для dmitryst

Ветеран


Сообщения: 7317
Благодарности: 910

Профиль | Отправить PM | Цитировать


Цитата dima1981:
не совсем понел, деревянный я потому что »
ну, не вы первый..
Короче, я совсем запутался в вашем алгоритме. Я предлагаю сделать так. Первым делом считаем общее количество строк в таблице - SELECT COUNT(*) FROM `rt` WHERE ваше_условие (пишем это значение в переменную $total). Далее, считаем количество страниц - $pages = ceil($total / $onpage), здесь $onpage это количество результатов на странице, ceil округляет это дело до следующего целого(то есть из 5,2 получится 6, что логично ). На первой странице выбираем нужные значения из таблицы - SELECT * FROM `rt` WHERE ваше_условие LIMIT 0,$onpage. Понятно? Надеюсь, понятно.
Далее, штампуем линки для следующей страницы -
PHP код: Выделить весь код

<a href="script.php?page=1&pages=$pages">next page</a

На следующей странице нам ничего считать не надо, просто проверим, не дошли ли до конца страниц, ($page == $pages), берем данные из базы (вычисляем сдвиг от начала - $offset= $page * $onpage; SELECT * FROM `rt` WHERE ваше_условие LIMIT $offset,$onpage ) ну и штампуем ссылки навигации
PHP код: Выделить весь код

$page1 $page 1;

$page2 $page 1;
print <<<END
print  <a href="script.php?page=$page1&pages=$pages">prev. page</a>
<a href="script.php?page=$page2&pages=$pages">next page</a>
END
;; 

-------
Осваиваю FreeBSD


Последний раз редактировалось dmitryst, 06-11-2008 в 13:02.


Отправлено: 12:04, 06-11-2008 | #30