php ile sayfalama kodları

İlk olarak veritabanı bağlantımızı yapalım.

<?php
## Sunucu ve veritaban Bağlantısı Yapalım
	$host	= "localhost";
	$user	= "root";
	$pass	= "";
	$vt	= "bot";
## Sunucumuza Bağlanalım
	$baglan = mysql_connect($host,$user,$pass) or die(mysql_error());
## Veritabanı Seçelim
	mysql_select_db($vt,$baglan) or die (mysql_Error());
## Türkçe Sorununu Çözelim
	mysql_query("SET COLLATION_CONNECTION = ´utf8_turkish_ci´ ");
	mysql_query("set names utf8");

Şimdi ise sayfamızda en aşağıda sayfa numaraları olacağı için ve hangi numaraya tıkladığımızda o sayfa geleceği için $_GET[] parametresi ile sayfa numarasını çekmemiz gerekmektedir. Ben $_GET[“s”] parametresini kullanacağım.

## Sayfa Degiskeninin alalim.
	$sayfa		=	@$_GET["s"];
## Sayfa Boşsa yada sayı değilse,
	if(empty($sayfa) || !is_numeric($sayfa)){
		$sayfa	=	1;
	}
## Kaçar Tane Gözükecek
	$kacar		=	5;
## Kayıt Sayısı Aalım
	$ksayisi	=	mysql_num_rows(mysql_query("select id from makale"));
## Sayfa Sayısı Alalım
	$ssayisi	=	ceil($ksayisi/$kacar);
## Nereden Başlayacak
	$nereden	=	($sayfa*$kacar)-$kacar;

Şimdi ise veritabanımızdan verilerimizi çekelim.
Ben veritabanından verileri çekerken ” order by id DESC ” komutunu kullandım yani eklenen en son verileri en üstte ilk sayfada gösterecektir.

## Verileri Çekelim
	$bul = mysql_query("select * from makale order by id DESC limit $nereden,$kacar");
		while($cek=mysql_fetch_array($bul)){
## Veritabanımdaki tablo sütunlarını direk değişken olarak çekmek istediğimden dolayı extract() fonksiyonunu kullandım.
		extract($cek);		
	echo  "<span><a href='#'>Başlık -> {$baslik}</a><hr></span>";
		}

En son olarak sayfaların sıralanmasını yapalım.

## Sayfaları Yazdıralım
for ($i=1; $i<=$ssayisi; $i++){
echo "<span style='text-align:center;margin:5px; border:1px dotted orange'><a href='sayfala.php?s={$i}'";
## hangi sayfada isek o linke aktif classını atadım. Fakat css olarak kodlamadım siz css olarak kodlarsanız hangi sayfada ise o sayfa numarasını daha belli edebilirsiniz.
	if($i == $sayfa){
		echo "class='aktif'";
	}
	echo ">{$i}</a></span>";
}
?>

Yorum Yazın

Email adresiniz yayınlanmayacak.