$cnt=100; // общее количество записей во всём выводе
$rpp=10; // кол-во записей на страницу
$rad=1; // сколько ссылок показывать рядом с номером текущей страницы (2 слева + 2 справа + активная страница = всего 5)
$link_sc='page_navigation.php'; // путь
if (isset($_GET['page']))
{
$page=$_GET['page']-1; // текущая страница
}
else
{
$page=0;
}
$links=$rad*2+1;
$pages=ceil($cnt/$rpp);
if ($page>0) { echo "First | Previous |"; }
$start=$page-$rad;
if ($start>$pages-$links) { $start=$pages-$links; }
if ($start<0) { $start=0; }
$end=$start+$links;
if ($end>$pages) { $end=$pages; }
for ($i=$start; $i<$end; $i++) {
echo " ";
if ($i==$page) {
echo "";
} else {
echo "";
}
// echo ($i*$rpp+1)."-";
// if ($i!=($pages-1)) { echo $i*$rpp+$rpp; } else { echo $cnt; }
echo ($i+1);
if ($i==$page) {
echo "";
} else {
echo "";
}
if ($i!=($end-1)) { echo " |"; }
}
if ($pages>$links&&$page<($pages-$rad-1)) { echo " ... ".($pages).""; }
if ($page<$pages-1) { echo " Next | Last"; }