Php ile Basitçe Mysql Sayfalama Kod Örneği
Öncelikle veritabanımızı oluÅŸturalım
Öncelikle veritabanımızı oluÅŸturalım
CREATE TABLE `kullanicilar` (
`kullanici_no` int(10) NOT NULL auto_increment,
`kullanici_adi` varchar(20) NOT NULL default '',
`adi` varchar(20) NOT NULL default '',
`soyadi` varchar(20) NOT NULL default '',
PRIMARY KEY (`kullanici_adi`),
UNIQUE KEY `kullanici_no` (`kullanici_no`)
) TYPE=MyISAM AUTO_INCREMENT=18 ;
INSERT INTO `kullanicilar` VALUES (1, 'myavruturk', 'Mehmet', 'Yavrutürk');
INSERT INTO `kullanicilar` VALUES (2, 'Musti', 'Mustafa', 'Kaya');
INSERT INTO `kullanicilar` VALUES (3, 'ali10', 'ali', 'veli');
INSERT INTO `kullanicilar` VALUES (4, 'ali11', 'ali', 'velix');
INSERT INTO `kullanicilar` VALUES (5, 'ali12', 'ali', 'velix');
INSERT INTO `kullanicilar` VALUES (6, 'ali13', 'ali', 'velix');
INSERT INTO `kullanicilar` VALUES (14, 'hardim', 'muhammed', 'kaya');
<?php
// VERİTABANI BİLGİLERİ
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "123";
$dbname = "sayfalama";
//****************************************************************
// ########## MYSQL Bağlantı Ayarları ############################
$veri_yolu=mysql_connect("$dbhost","$dbuser","$dbpass") or die("<center><br>MySQL Bağlantı Hatası!</center>") ;
mysql_select_db("$dbname", $veri_yolu) or die ("<br><center>Veri Tabanı Bulunamıyor!</center>");
//****************************************************************
// sayfa değişkenine değer atatmamışsa 1'e eşitliyoruz
if(!isset($_GET['sayfa'])){
$sayfa = 1;
} else {
$sayfa = $_GET['sayfa'];
}
//****************************************************************
// sayfa başına kaç kayıt listelenecek
$kacar = 2;
//****************************************************************
// Geçerli sayfadan itibaren kaç kayıt kaldığını buluyoruz
$kactan = (($sayfa * $kacar) - $kacar);
//****************************************************************
// $kactan ve $kacar deÄŸiÅŸkenlerimizin aldığı deÄŸerlere göre bilgileri veritabanından alıyoruz
$sonuc = mysql_query("SELECT * FROM kullanicilar LIMIT $kactan, $kacar");
//****************************************************************
// Sayfa Başında Tablo Başlıklarını hazırlıyoruz
echo "<table align=\"center\" width=\"700\" border=\"1\" bordercolor=\"FFFFFF\" cellspacing=\"2\" cellpadding=\"2\"><tr bordercolor=\"6699FF\" bgcolor=\"6699FF\"><td width=\"60\" height=\"25\">Sıra No</td><td width=\"180\">Kullanıcı Adı</td><td width=\"180\">Adı</td><td width=\"180\">Soyadı</td></tr>";
//****************************************************************
$sirano = 1; // herkaydın sıra numarası için sırano deÄŸiÅŸkeni oluÅŸturuyoruz
//****************************************************************
// Kayıtlarımızı ekranda gösteriyoruz
while ($sorgu_verisi = mysql_fetch_array($sonuc)) {
echo " <tr bordercolor=\"6699FF\"><td height=\"25\">$sirano</td><td>$sorgu_verisi[kullanici_adi]</td><td>$sorgu_verisi[adi]</td><td>$sorgu_verisi[soyadi]</td>";
$sirano++;
}
echo "</tr></table>";
//****************************************************************
// Toplam kayıt sayısını veritabanından alıyoruz
$toplam_kayit = mysql_result(mysql_query("SELECT COUNT(*) as Num FROM kullanicilar"),0);
//****************************************************************
// ceil() fonksiyonumuz ile toplam sayfa adedini buluyoruz
$toplam_sayfa = ceil($toplam_kayit / $kacar);
//****************************************************************
echo "<table width=\"700\" border=\"1\" bordercolor=\"FFFFFF\" align=\"center\" cellpadding=\"2\" cellspacing=\"2\"><tr class=\"tablobaslik\" bordercolor=\"000000\">";
//****************************************************************
// Önceki Kayıtların GösterileceÄŸi Linkimiz
echo "<td width=\"100\">";
if($sayfa > 1){
$prev = ($sayfa - 1);
echo "<a href=\"".$_SERVER['PHP_SELF']."?sayfa=$prev\"> Önceki Sayfa</a>";}
else { echo "Önceki Sayfa";}
for($i = 1; $i <= $toplam_sayfa; $i++){
if(($sayfa) == $i){
echo "</td><td> Aktif Sayfa: ";
echo "<b> $i </b>";
} else {
echo "<a href=\"".$_SERVER['PHP_SELF']."?sayfa=$i\"></a> ";
}
echo "</td>";
}
// Sonraki Kayıtlarımızın GösterileceÄŸi Linkimiz
echo "<td width=\"100\">";
if($sayfa < $toplam_sayfa){
$next = ($sayfa + 1);
echo "<a href=\"".$_SERVER['PHP_SELF']."?sayfa=$next\"> Sonraki Sayfa</a></td>";}
else { echo "Sonraki Sayfa";}
echo "</td>";
echo "<td>Toplam Kayıt : <b>$toplam_kayit</b> </td>";
echo "<td>Toplam Sayfa : <b>$toplam_sayfa </b></td>";
echo "</tr></table>";
?>

14.06.2009 11:26 — 

Yorumlar...
(Toplam 8 yorum var.)
Sayfa: 1
Bu yorumu gerçekten şikayet etmek istiyor musunuz ???
Bir sebep belirtmek isterseniz alttaki kutucuÄŸa yazabilirsiniz...
Pencereyi Kapat...
Misafir
Misafir
Misafir
Misafir
Yorum: 296
Forum Mesaj: 224
Misafir
Benim bir sorum olacak. "Önceki sayfa" ve "Sonraki sayfa" linklerinin ortasında sayfa numaralı linkleri nasıl ekleyebilirim. Bir örnekle açıklamam gerekirse:
"Önceki sayfa 1 2 3 4 5 6 7 8 Sonraki sayfa"
Umarım açıklayıcı olmuÅŸtur.
Yorum: 296
Forum Mesaj: 224
59. satırı alttaki gibi değiştirirseniz istediğiniz sonucu alırsınız.
echo "<a href=\"".$_SERVER['PHP_SELF']."?sayfa=$i\">$i</a>";Misafir
el emeÄŸi göz nuru olmuÅŸ bizim için ders olmuÅŸ:)