1 sonuçtan 1 ile 1 arası

Threaded View

  1. #1
    Forum Demirbaşı Array
    Üyelik tarihi
    18.06.2007
    Yer
    Anasının Dizinin Dibinden :=)
    Yaş
    40
    Mesajlar
    10.926
    Tecrübe Puanı
    238

    Standart PHP ile Sayfalandırma

    PHP ile sayfalandırma yapımı konusunu ele alalım ve veri tabanından çektiğimiz verileri gösterirken sayfalama yaparak her sayfada istediğimiz sayıda konu görünmesini sağlayalım.

    Gerekli açıklamalar kodun içinde mevcuttur.

    <?php
    ////////////////BİSMİLLAHİRRAHMANİRRAHİM///////////////////////////

    /* Mysql baglantısını yazın */
    $dbhost = "localhost";
    $dbuser = "";
    $dbpass = "";
    $dbadi = "";
    $baglan = mysql_connect($dbhost,$dbuser,$dbpass);
    //tukçe karakterler için
    mysql_query("SET NAMES 'latin5'");

    if(! $baglan) die("Mysql baglantisi saglanamiyor");
    mysql_select_db($dbadi,$baglan) or die("Veritabani baglantisi saglanamiyor");



    $sayfa=$_GET['sayfano']; //bU GET sayfa numarasını alıyoruz

    //Sayfa numarasını alıyoruz
    /*sayfaya ilk girildiğinde $_GET['sayfano'] boş bir değere sahip olacağında böyle
    bir if döngüsüne girdik*/
    if ($sayfa)
    {
    $sayfano=(intval(abs ($_GET['sayfano']) ) );
    } else {
    /*sayfaya ilk girildiğinde $_GET['sayfano'] boş bir değere sahip olacağında böyle
    bir if döngüsüne girdik*/
    $sayfano=1;
    }

    //Her sayfada gösterilecek bilgi adetini alıyoruz sayıyı alıyoruz
    if($_POST['kacadet'])
    {
    $kacadet=$_POST['kacadet'];
    }
    elseif (!$_POST['kacadet'])
    {
    $kacadet=1;
    }


    /*Buradaki $limit veri tabanından bilgileri çekerken kaçıncı veriden başlayacağımızı bildirir.
    Örneğin sayfa 2 olduğunda $limit 10 olur ve veri tabanındaki 10. veriden itibaren 10 adet veri sıralanır böylece 10. veriden 19. u veriye kadar olan veriler sıralanır*/
    $limit=($sayfano-1)*$kacadet;

    //Verilerin içeriğini alıyoruz
    $veriler =mysql_query("select id from sol_ana_menu");
    $veriler_sonuc =mysql_query("select id from sol_ana_menu limit $limit,$kacadet");
    $verisayisi =mysql_num_rows($veriler);

    while ($oku=mysql_fetch_array($veriler_sonuc))
    {
    echo "Bu kısımlara veri tabanından alınan veriler yazılacak<br>";
    }

    //Toplam sayfa sayısını hesaplıyoruz
    $sayfasayisi=ceil($verisayisi/$kacadet);

    /*İleri ve geri butonuna bastığımızda olduğumuz sayfadan bir öncekinin sayfanosunu
    alıyoruz*/
    $geri=$sayfano-1;
    $ileri=$sayfano+1;

    ?>

    <table align="right" cellpadding="5" cellspacing="5" >
    <tr>


    <?php
    ################################################## ################################
    # Bu kısımda sadece ileri ve geri yazısının yazılma şartlarını belirliyoruz#######
    ################################################## ################################

    //Son sayfa ise geri seçeneğini yazdırıyoruz
    if($sayfano==$sayfasayisi)
    {
    if ($sayfasayisi!=1)
    {
    ?>
    <td>
    <a href="sayfalandirma.php?sayfano=<?php echo $geri ?>">Geri</a>
    </td>
    <?php
    }
    }
    //ilk ve son sayfalar arasındaki sayfa numaralarını yazdırıyoruz
    if( $sayfano>1 && $sayfano<$sayfasayisi )
    {
    ?>
    <td>
    <a href="sayfalandirma.php?sayfano=<?php echo $geri ?>">Geri</a>
    </td>

    <?php
    }
    ################################################## #################################
    //kaç tane sayfa numarasının görünmesinin belirlenmesi
    $numarasayisi=5; //Aynı anda Kaçtane sayfa numarası yazılsın sadece bunu değiştirin
    $x=intval((($sayfano-1)/$numarasayisi));
    $denbasla=$numarasayisi*$x;

    if ($denbasla==0) $denbasla=1;

    //Sayfa numaralarını yazdırıyoruz
    while( $denbasla<=($numarasayisi*($x+1)) )
    {
    if($denbasla<=$sayfasayisi)
    {
    if ($sayfano==$denbasla)
    {
    ?>
    <td bgcolor="blue"><a href="sayfalandirma.php?sayfano=<?php echo $denbasla ?>"><?php echo $denbasla; ?></a></td>
    <?php
    } else {
    ?>
    <td><a href="sayfalandirma.php?sayfano=<?php echo $denbasla ?>"><?php echo $denbasla; ?></a></td>
    <?php
    }
    }

    $denbasla++;

    }
    ################################################## ################################
    //ilk ve son sayfa numaraları arasında ileri seçeneğini yazdırıyoruz
    if( $sayfano>1 && $sayfano<$sayfasayisi )
    {
    ?>
    <td>
    <a href="sayfalandirma.php?sayfano=<?php echo $ileri ?>">İleri</a>
    </td>
    <?php
    }

    //Eğer ilk sayfa ise ileri seçeneğini yadırıyoruz
    if($sayfano==1)
    {
    if ($sayfasayisi!=1)
    {
    ?>
    <td>
    <a href="sayfalandirma.php?sayfano=<?php echo $ileri ?>">İleri</a>
    </td>
    <?php
    }
    }

    ################################################## ###################################
    # Bu kısımda sadece ileri ve geri yazısının yazılma şartlarını belirliyoruzun bitişi#
    ################################################## ###################################

    ?>

    </tr>


    </table>
    PHP ile Sayfalandırma

    Takdir Ediliyorsanız Değil, Taklit Ediliyorsanız Başarmışsınız Demektir.
    Hayat öyle oyunlar oynuyor ki, nereye tutunsam düşüyorum.
    Tam da palyaçonun dediği gibi: "ağlayamadığımdan gülüyorum."
    Paul Auster


 

Yetkileriniz

  • Konu Acma Yetkiniz Yok
  • Cevap Yazma Yetkiniz Yok
  • Eklenti Yükleme Yetkiniz Yok
  • Mesajınızı Değiştirme Yetkiniz Yok
  •