Projelerimde kullanmak amaçlı hızla bir araya getirdiğim sayfalama sınıfı
<?php 
////////////////////////////////////////////////////
//                                                                                            	  
//	Code By İsmail Perim                                                 
//	Dosya                : /sayfalama.php
//	Açıklama            : Sayfalandırma Sınıfı
//							
////////////////////////////////////////////////////
 
class Sayfalama
{
	public $KayitSayisi = 10;
	public $Sorgu = "";
	public $ToplamKayit = "";
	public $Linkler = "";
	public $Sayfa = "";
	public function Sayfalama($_Sorgu,$_TopKay,$_Sayfa,$_KayitSayisi=10)
	{
		$this->KayitSayisi = $_KayitSayisi;
		$this->Sorgu = $_Sorgu ;
		$this->ToplamKayit = $_TopKay;
		$this->Sayfa = $_Sayfa;
	}
	public function Olustur()
	{
 
			$adet=15;
 
			if($_GET['sayfa']==0)
			{
				$_GET['sayfa']=1;
				$sayfa=0;
				$kayit=0;
			}
			elseif($_GET['sayfa']==1)
			{
				$sayfa=0;
				$kayit=0;
			}
			else
			{
				$sayfa=$_GET['sayfa'];
				$kayit=($sayfa*$adet-$adet);
			}
 
			$sorgu_temp = $this->Sorgu."   LIMIT $kayit,$adet  ";
			$this->Sorgu=mysql_query($sorgu_temp);
 
			#######################   LİNKLER  #######################
 
					$sonraki=$_GET['sayfa']+1;
					$onceki=$_GET['sayfa']-1;
										if($onceki>0)
					{
						$this->Linkler.='<a href="?'.$this->Sayfa.'sayfa='.$onceki.' " style="text-decoration:none;"> [ Önceki ] </a>';
					}
					$say=$this->ToplamKayit;
					$link=ceil($say/$adet);
					$nokta=0;
					$nokta1=0;
					for($i=1;$i<$link+1;$i++)
					{
 
						if($i<$sayfa+6 && $i>$sayfa-6)
						{
							if((int)$sayfa==$i)
							{
								$this->Linkler.='<b>';
							}
 
							$this->Linkler.='<a href="'.$this->Sayfa.'sayfa='.$i.'" style="text-decoration:none;"> ['.$i.'] </a>';
 
							if((int)$sayfa==$i)
							{
								$this->Linkler.='</b>';
							}
 
						}	
						else
						{
							if( $i<$sayfa+6 && $nokta== 0)
							{
								$this->Linkler.=  '<a href="'.$this->Sayfa.'sayfa='.($sayfa-5).' " style="text-decoration:none;"> [ ... ] </a>';
								$nokta = 1;
							}	
							if( $i>$sayfa-6 && $nokta1== 0)
							{
								$this->Linkler.=  '<a href="'.$this->Sayfa.'sayfa='.($sayfa+5).' " style="text-decoration:none;"> [ ... ] </a>';
								$nokta1 = 1;
							}	
 
						}
					}
 
					if($sonraki<$link+1)
					{
						$this->Linkler.='<a href="'.$this->Sayfa.'sayfa='.$sonraki.' " style="text-decoration:none;"> [ Sonraki ] </a>';
					}
 
 
			#######################  / LİNKLER #######################
	}
}
 
 
 
?>
Örnek Kullanımı :
<?php////////////////////////////////////////////////////
//                                                                                            	  
//	Code By İsmail Perim                                                 
//	Dosya                : /sayfalama_ornek.php
//	Açıklama            : Sayfalandırma Sınıfı Örneği
//							
////////////////////////////////////////////////////
 
# Sayfalama Sınıfımızı Ekliyoruz
include_once "sayfalama.php";
 
# MySQL Bağlantılarını Yaptığımız Sayfamız
include_once "baglanti.php";
 
# Toplam Kayıt Sayısını Alıyoruz.
$KayitSayisi = mysql_num_rows(mysql_query("SELECT * FROM Tablo"));
 
#Bir Sayfada Gösterilecek Kayıt Sayısı
$KacKayit = 15;
 
# Yeni Bir Sayfalama Sınıfı Türetiyoruz
$Sayfa = new Sayfalama("SELECT * FROM Tablo ",$KayitSayisi,"index.php?Islem=KayitListe&",$KacKayit);
 
# Sınıfımız Gerekli İşlemleri Yaparak Sorguları Sayfalandırmaya Uygun Hale Getiriyor
$Sayfa->Olustur();
 
# Oluşan Sayfa Linklerini Ekrana Bastırıyoruz
echo $Sayfa->Linkler;
 
# Sayfalandırma Sonucu Uygun Hale Getirilen Sorgumuzu İşlemlerimiz İçin Kullanıyoruz.
while($Veri = mysql_fetch_array($Sayfa->Sorgu))
{
     #... İşlemlerimiz ... #
}
?>