Postanowiłem poprawić swe stronicowanie. Dodać nową funkcje jaką jest pokazywanie na której stronie się znajdujemy.

Przechodząc od razu do kodu bez zbędnego owijania w bawełne:

 PHP |  copy code |? 
$ile_na_stronie = 20; // ilość wpisów na stronę
 
if(empty($_GET['start'])) // sprawdzamy czy tablica super globalna $_GET jest pusta...
{
	$poczatek = 1; // ... jeśli tak podstawiamy domyślnie 1...
	$_GET['page'] = 1; // zaznaczenie domyslnie 1 strony
}
else
{
	$poczatek = mysql_escape_string($_GET['start']); // ... jeśli nie podstawiamy jej wartość (SQL Injection)
}
 
$sql = mysql_query("SELECT * FROM termin LIMIT $poczatek, $ile_na_stronie"); // pobieramy z tabeli rekordy (wiersze) i ustawiamy LIMIT, zmienna $poczatek mówi nam od jakiego rekordu zaczynamy wyświetlanie, natomiast zmienna $ile_na_strone pokazuje odpowiednią liczbę rekordów
 
while ($row = mysql_fetch_array($sql))
{
	//wyswietlamy jakies dane
}
 
$all = mysql_query("SELECT COUNT(*) FROM termin");
$ile = mysql_result($all, 0); // teraz zliczamy ile mamy wszystkich wierszy w bazie
 
$next = $_GET['start'] + $ile_na_stronie; // ustawiamy wartość dla linku następny...
$prev = $_GET['start'] - $ile_na_stronie; // ... i poprzedni
 
if($ile > $ile_na_stronie) // sprawdzamy czy zmienne $ile jest większa od ilości danych wyświetlanych
{
	for($i=0 ; $i<ceil($ile/$ile_na_stronie) ; $i++) // zaokrąglamy ułamek do "góry" który otrzymaliśmy z podzielenia ilości wierszy przez ilość wyświetlanych na stronie
	{
		$b = $i + 1;
		if ($_GET['page']==$b) //sprawdzamy. jeśli jest równe wyświetlamy z zaznaczeniem jeśli nie bez
		{
			echo '<a href="ka.php?start='.($i*$ile_na_stronie).'&page='.($i+1).'">['.($i+1).']</a> | '; // wyświetlamy odpowiednie strony z zaznaczeniem
		}
		else
		{
			echo '<a href="ka.php?start='.($i*$ile_na_stronie).'&page='.($i+1).'">'.($i+1).'</a> | '; // wyświetlamy odpowiednie strony bez zaznaczeniem
		}
	}
 
	if ($_GET['start'] == 0) // sprawdzamy jeśli strona w $_GET jest równa 0 ...
	{
		echo '<a href="ka.php?start='.$next.'&page='.($_GET['page']+1).'">Następny ></a>'; // ... to wyświetlamy tylko link: Następny ...
	}
	elseif (($_GET['start'] > 0) && ($next < $ile)) // jeśli strona jest większa od 0 i zarazem następna stronę mniejsza od ilości...
	{
		echo '<a href="ka.php?start='.$prev.'&page='.($_GET['page']-1).'">< Poprzedni</a> | '; // ... wyświetlamy linki Poprzedni i ...
		echo '<a href="ka.php?start='.$next.'&page='.($_GET['page']+1).'">Następny ></a>'; // ... Następny
	}
	elseif ($next > $ile) // jeśli natomiast następna strona jest większa od ilości danych ...
	{
		echo '<a href="ka.php?start='.$prev.'&page='.($_GET['page']-1).'">< Poprzedni</a>'; // ... wyświetlamy tylko link Poprzedni
	}
}