Użyj funkcji, choćby takiej (kiedyś ją znalazłem na tym forum i trochę ulepszyłem):
<?php
function tresc_pasek($l_odp,$l_odp_nastronie,$l_odp_napasku,$a) { //funkcja tworząca nawigację
$l_odp_podz = intval($l_odp/$l_odp_nastronie)+1; $l_odp_podz_mod = $l_odp%$l_odp_nastronie;
if($l_odp_podz_mod>0){++$l_odp_podz;}
if($a>=$l_odp_podz){$a=$l_odp_podz-1;}
if($a>1){$tablica['prev']=$a-1;}else {$tablica['prev']=0;}
if($a<=$l_odp_napasku){$koniec=$l_odp_napasku*2+2;}else{$koniec=$a+$l_odp_napasku+1;}
if($a<=$koniec-$l_odp_napasku){$star=$a-$l_odp_napasku;}
if($a>=$l_odp_podz-$l_odp_napasku){$star=$l_odp_podz-$l_odp_napasku*2-1;}
if($koniec>$l_odp_podz){$koniec=$l_odp_podz;}
if($star<1){$star=1;}
for($i=$star;$i<$koniec;++$i){
if($i<$a){$tablica[]=$i;}
if($i==$a){$tablica['active'] = $i;}
if($i>$a){$tablica[]=$i;}
}
if($a<$l_odp_podz-1){$tablica['next']=$a+1;}else{$tablica['next']=0;}
return $tablica;
}
?>
- wystarczy ją nakarmić argumentami: liczba rekordów, liczba rekordów na jednej stronie, rozmiar paska nawigacyjnego, numer aktualnej strony. Wynik działania tej funkcji to gotowa tablica stron (z zaznaczeniem aktywnej) - wystarczy ją połączyć z kodem HTML i wyświetlić na stronie.