Php ile Basitçe Mysql Sayfalama Kod Örneği

14.06.2009 11:26 — Programlama, Webmaster, Wordpress,

Ö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>";
?>

    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...
  1. 06.08.2009 08:14
    kattal


    Misafir




    Çok teşekkür ederim çalışıyor.
  2. 10.01.2010 16:33
    murat


    Misafir




    bu kodlar hatali yaw
  3. 01.08.2010 10:39
    ahmed


    Misafir




    kodlar hatali hocam yaww! isset ile sayfa degiskeni bastan nerden geliyor ki kontrol ettirmissin :)
  4. 18.01.2011 11:30
    MasterWeb


    Misafir




    Kodlarınız hatalı kontrol edmenızı rıca edıyorum....
  5. 19.01.2011 12:51


    Admin
    Yorum: 296
    Forum Mesaj: 224




    Kodları düzelttim. Şuanda hata gözükmüyor. ahmed yazmış:
    kodlar hatali hocam yaww! isset ile sayfa degiskeni bastan nerden geliyor ki kontrol ettirmissin
    Ahmet bey, ilk sayfa yüklemesinde bu kısım dediğiniz gibi pek anlamlı gözükmüyor fakat sayfalama yapıldığında ve sayfa numaralarından birine tıklandığında o değişken değer alacak ve isset kontrolü o zaman gerekli olacak....

  6. 01.12.2011 23:23
    Muharrem


    Misafir




    Kodlar gayet güzel bir ÅŸekilde çalışıyor. Paylaşım için teÅŸekkür ediyorum.

    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. 

  7. 02.12.2011 23:55


    Admin
    Yorum: 296
    Forum Mesaj: 224




    @ Muharrem:
    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>";

  8. 14.12.2011 19:08
    Ezgi


    Misafir




    el emeÄŸi göz nuru olmuÅŸ bizim için ders olmuÅŸ:)


Sayfa:1


Yorum Yazın


Yorumları Gizle | İçeriği Gizle