|
|
|
|
|
для: Trianon
(14.12.2009 в 01:19)
| | вроде бы решил :) сейчас протестирую основательно!
if($page == 1)
$end = $page*$num;
else
$end = $start + (count($arr) - $start);
|
П.СЫ. Блин.....сейчас в файле 25 записей...вывожу по 10...
первая 10 - с 0-10
вторая 15 - с 11-25
третья 5 - с 21-25
ппц..........
ну его в баню...вроде бы все!!! нука посмотрите..
$end = $page * $num;
if($page == $total)
$end = count($arr);
|
вроде бы работает при любом кол. записей в файле и при любом значении $num | |
|
|
|
|
|
|
|
для: TetRiska
(14.12.2009 в 01:09)
| | Почему на третьей странице долж>когда в файле 4 записи - все ок, когда 5, то
>первая страница - 2 записи
>вторая страница - 2 записи
>третья страница 2, но вторая запись пустая и ее не должно быть...должна быть лишь 1 запись
>>так значит не первая страница отличается от остальных, а третья?
>либо я Вас ввожу в заблуждения,
да нет... все описываемое покамест достаточно правдиво.
>либо хотите помучать...
отнюдь, скорее Вы меня хотите помучить :)
>но ни черта не могу сообразить.
Что здесь соображать?
Я простейший вопрос задал. Какая страница отличается от остальных и почему? | |
|
|
|
|
|
|
|
для: TetRiska
(14.12.2009 в 01:09)
| | Посмотрите на код - вы же ему говорите интерпретатору "выводи на странице по 2 записи", он и выводит, и ему плевать, что записи то кончились, он выводит пустой шаблон. | |
|
|
|
|
|
|
|
для: Trianon
(14.12.2009 в 01:01)
| | когда в файле 4 записи - все ок, когда 5, то
первая страница - 2 записи
вторая страница - 2 записи
третья страница 2, но вторая запись пустая и ее не должно быть...должна быть лишь 1 запись
>так значит не первая страница отличается от остальных, а третья?
либо я Вас ввожу в заблуждения, либо хотите помучать...но ни черта не могу сообразить. | |
|
|
|
|
|
|
|
для: TetRiska
(14.12.2009 в 00:56)
| | >когда 5, то первая страница - 2 вторая страница - 2
>третья тоже 2, но вторая пустая и ее не должно быть
>если извратиться if($page == 1)
так значит не первая страница отличается от остальных, а третья? | |
|
|
|
|
|
|
|
для: Trianon
(13.12.2009 в 23:55)
| |
$start = $page * $num - $num;
$end = $page * $num;
for($i=$start;$i<$end;$i++)
{
|
при таком раскладе на первой 2 записи - все ок
на второй тоже 2 записи - но одна (первая) - правильно, а вторая лишняя (пустая)
когда в файле 4 записи - все ок, когда 5, то
первая страница - 2
вторая страница - 2
третья тоже 2, но вторая пустая и ее не должно быть | |
|
|
|
|
|
|
|
для: TetRiska
(13.12.2009 в 23:52)
| | > так и написано
В каком месте?
$start = $page * $num - $num; (1)
$start = ($page - 1) * $num; (2)
Пусть $page = 3, а $num = 2.
$start = 3 * 2 - 2 = 4; (1)
$start = (3 - 2) * 2 = 2; (2) | |
|
|
|
|
|
|
|
для: TetRiska
(13.12.2009 в 23:52)
| | Вы не отвлекайтесь, думайте.
В частности думайте над тем, почему у Вас не показывается вторая строка на второй странице. | |
|
|
|
|
|
|
|
для: neadekvat
(13.12.2009 в 23:34)
| | хмм..у меня вроде бы так и написано | |
|
|
|
|
|
|
|
для: TetRiska
(13.12.2009 в 23:27)
| |
<?php
$sum = 2;
$page = (int) $_POST['page'];
if (empty ($page) || $page <= 0) $page = 1;
$start = ($page - 1) * $sum;
|
| |
|
|
|
|