PHP: Sayfa Sayfa Listeleme

Debian Türkiye sitesinden

Sayfa Sayfa Listeleme Eğer listeleyeceğiniz kayıt sayısı 100 den fazla ise bir sayfalama fonksiyonuna ihtiyaç duyabilirsiniz.

   * MySQL ile veri haberleşmesi gecikirse scriptiniz zamanaşımına uğrayabilir.
   * Kullanıcı yüzlerce veri ile aynı anda boğuşmak zorunda kalabilir.

Bu örne ise PHP + MySQL kullanarak kayıtlari sayfalı şekilde ekranda goruntuleyeceğiz. Kod : <?php $sayfaurl = "index.php?m=tumfirmalistesi"; // Sayfalama yapılacak URL $limit = '25'; // Sayfada goruntulenecek kayit sayisi

// Eger sayfa tanımı yapılmadi yada sayfa gecerli bir numerik değer değilse 1 atıyoruz. if(empty($sayfa) or !is_numeric($sayfa)) { $sayfa ='1'; } $girdi = mysql_query("SELECT id FROM firma WHERE aktif='1' AND ban='0'"); $sayi = mysql_num_rows($girdi); // toplam mySQL kayıt sayısı $kayitSayisi = ceil($sayi / $limit); // Bu değişken kac adet sayfa oldugunu tutuyor. ceil fonksiyonun detaylari için tıklayın.

$son = ($sayfa-1)*$limit; $SQL= "SELECT id,ad FROM firma WHERE aktif='1' AND ban='0' LIMIT $son,$limit"; // Bu MySQL sorgusu ile sayfa sayfa kayıtlarımız çekeceğiz $sorgu=mysql_query($SQL); if(!$sorgu) { echo "MySQL Error" . mysql_error(); exit(); } // Sayfalar arası dolaşim menümüz bu menuyu bir değişkene atıyorum hem sayfanın ustunde hemde en altında ekrana yazdıracağız // En bastaki <<GERI butonu if ($sayfa==1) { $linkCiktisi.="<< Geri  "; } else { $birGeri=$sayfa-1; $linkCiktisi.="<a href='$sayfaurl&sayfa=$birGeri'><< Geri</a>  "; } for($i=1; $i <= $kayitSayisi; $i++) { if ($sayfa==$i) { $linkCiktisi.="[$i] "; continue; } $linkCiktisi.="<a href='$sayfaurl&sayfa=$i'>$i</a> ";

} //En Sondaki İLERİ>> butonu if ($sayfa<$kayitSayisi) { $birIleri=$sayfa+1; $linkCiktisi.="<a href='$sayfaurl&sayfa=$birIleri'>İleri >></a>"; } else { $linkCiktisi.="İleri >>"; } echo $linkCiktisi; // Sayfalar arası dolaşım menüsü Sayfa Başı while ($sira=mysql_fetch_object($sorgu)) { echo ucwords(strip_tags($sira->ad); // Kayıt Adlarını ekrana yazalım. }

echo $linkCiktisi; // Sayfalar arası dolaşım menüsü Sayfa Sonu ?> Hepsi bukadar. Siz ihtiyacınıza göre CSS ile kodlari güzelleştirebilirsiniz ;)