Вопрос по постраничному выводу

Alex20007

Новичок
Вопрос по постраничному выводу

Нашел пример постраничного вывода. Отладил под свой сайт - всё работает !
Но есть одно НО.
Нумерация страниц в переменной page идёт так 0 , 10, 20, 30 и т.д. , а хотелось бы 1, 2, 3, 4 и т.д.


Вот код.


/////////////////////////////////////////////////////////////

$N = "$total_rows";
$perPage = "$ppp";
$currOffset = 0;
if (isset($_GET['page'])) $currOffset = $_GET['page'];

// Количество соседних номеров страниц с каждой стороны,
// отображающихся рядом с текущей страницей
$xwidth = 15;

$currNum = "$ii";
$prevOffset = -1;
if ($currOffset - $perPage >= 0) $prevOffset = $currOffset - $perPage;

$nextOffset = 0;
if ($currOffset + $perPage < $N) $nextOffset = $currOffset + $perPage;
// Флаги вывода левого и правого многоточия
$leftBlankOut = $rightBlankOut = false;
for ($i = 0; $i < $N; $i += $perPage) {
$currNum++;

// Манипулируем выводом левого многоточия
if ($i > 0 && ($i <= $currOffset - $xwidth * $perPage - $perPage)) {
if (!$leftBlankOut) print '...';
$leftBlankOut = true;
continue;
}

// Манипулируем выводом правого многоточия
if ($i < ($N - $perPage) && ($i >= $currOffset + $xwidth * $perPage + $perPage)) {
if (!$rightBlankOut) print '...';
$rightBlankOut = true;
continue;
}

if ($i-0 == $currOffset) {
print ' <b>'.$currNum.'</b> ';
} else {
print ' <a href="go.php?page='.$i.'">'.$currNum.'</a> ';
}
}




/////////////////////////////////////////////////////////


Вроде вся проблема в этой строке

for ($i = 0; $i < $N; $i += $perPage) {
$currNum++;

Пробовал ее переделывать по всякому, но не получается, только IE зависает.


Подскажите как сделать. Всем заранее спасибо !
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Alex20007
Ты индус?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Alex20007
Зачем тебе вообще вся эта арифметика с вычеслениями?
Не проще
SELECT * FROM `table` LIMIT '.$page*$perPage.', '.$perPage;
?
 

Alex20007

Новичок
У меня на сайте сделан постраничный вывод такого типа
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Он работает прекрасно .. но если страниц очень много - например 1000 то как это будет выглядить ? Я думаю не очень хорошо ))

Вот его код

for($i=1;$i<=$num_pages;$i++) {
if ($i-0 == $page) {
echo $i." ";
} else {

$ii = "$i";
echo "<a href='go.php?page$ii'>$ii </a>";
}
}

Вот и задумал сделать вида

Предыдущая страница 1 ... 3 4 5 6 7 8 9 10 11 12 13 ... 153 Следующая страница
 

Фанат

oncle terrible
Команда форума
Alex20007, постраничный вывод - очень простая задача. Для программиста любого уровня.
Поэтому стыдно должно быть задавать такие вопросы. Соберись и сделай все самостоятельно.
 

Alex20007

Новичок
Я не программист , просто нужно иногда дизайн поправить.

Все нашел - воткнул - чуть подправил - ВСЕ РАБОТАЕТ !
Всем спосибо за помощь !

http://php.com.ua/ru/articles/bicycles/universal_db_pager.htm

Скрипт 3
 
Сверху