• 03-06-2015, 17:26:24
    #1
    Üyeliği durduruldu
    Merhaba,

    Veritabanından gelen verileri sayfalama konusunda örnek yazabilirmisiniz arkadaşlar?
  • 05-06-2015, 12:15:59
    #2
    <?php
    $count = 10

    if(@$request[2] == ""){
    $page = 1;
    }else{
    $page = $request[2];
    }
    $page = ($page == 0 ? 1 : $page);


    $recordsPerPage = 30;
    $link = "";
    $adjacents = "2";

    $link = 'musteri_listesi/' ;

    $start = ($page-1) * $recordsPerPage;

    $sql = "select * from {tablo} limit $start,$recordsPerPage";

    $prev = $page - 1;
    $next = $page + 1;
    $lastpage = ceil($count/$recordsPerPage);
    $lpm1 = $lastpage - 1;
    $pagination = "";

    if(!$end_link){
    $end_link = "";
    }

    if($lastpage > 1){

    if ($page > 1){
    $pagination.= '<li><a href="'. $link . '1'. $end_link . '" data-action="refresh">&laquo; İlk&nbsp;&nbsp;</a></li>';
    $pagination.= '<li><a href="' . $link . $prev . $end_link . '" data-action="refresh">&laquo; Geri&nbsp;&nbsp;</a></li>';
    }else{
    $pagination.= "<li><span class='disabled'>&laquo; İlk&nbsp;&nbsp;</span></li>";
    $pagination.= "<li><span class='disabled'>&laquo; Geri&nbsp;&nbsp;</span></li>";
    }
    if ($lastpage < 7 + ($adjacents * 2)){
    for ($counter = 1; $counter <= $lastpage; $counter++){
    if ($counter == $page){
    $pagination.= '<li class="active"><a>' . $counter . '</a></li>';
    }else{
    $pagination.= '<li><a href="' . $link . $counter . $end_link . '" data-action="refresh">' . $counter. '</a></li>';
    }
    }
    }elseif($lastpage > 5 + ($adjacents * 2)){
    if($page < 1 + ($adjacents * 2)){
    for($counter = 1; $counter < 4 + ($adjacents * 2); $counter++)
    {
    if($counter == $page){
    $pagination.= '<li class="active"><a>' . $counter . '</a></li>';
    }else{
    $pagination.= '<li><a href="' . $link . $counter . $end_link . '" data-action="refresh">' . $counter . '</a></li>';
    }
    }
    $pagination.= '<li><a class="disabled">...</a></li>';
    $pagination.= '<li><a href="' . $link . $lpm1 . $end_link . ' " data-action="refresh">' . $lpm1 . '</a></li>';
    $pagination.= '<li><a href="' . $link . $lastpage . $end_link . '" data-action="refresh">' . $lastpage . '</a></li>';

    }elseif($lastpage - ($adjacents * 2) > $page && $page > ($adjacents * 2)){
    $pagination.= '<li><a href="' . $link . '1' . $end_link . '" data-action="refresh">1</a></li>';
    $pagination.= '<li><a href="' . $link . '2' . $end_link . '" data-action="refresh">2</a></li>';
    $pagination.= '<li><a class="disabled">...</a></li>';
    for($counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++)
    {
    if($counter == $page)
    $pagination.= '<li class="active"><span class="current">'. $counter . '</span></li>';
    else
    $pagination.= '<li><a href="' . $link . $counter . $end_link . '" data-action="refresh">' . $counter . '</a></li>';
    }
    $pagination.= '<li><a class="disabled">..</a></li>';
    $pagination.= '<li><a href="' . $link . $lpm1 . $end_link . '" data-action="refresh">' . $lpm1 . '</a></li>';
    $pagination.= '<li><a href="' . $link . $lastpage . $end_link . '" data-action="refresh">' . $lastpage . '</a></li>';
    }else{
    $pagination.= '<li><a href="' . $link . '1' . $end_link . '" data-action="refresh">1</a></li>';
    $pagination.= '<li><a href="' . $link . '2' . $end_link . '" data-action="refresh">2</a></li>';
    $pagination.= '<li><a class="disabled">..</a></li>';
    for($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++)
    {
    if($counter == $page)
    $pagination.= '<li class="active"><span class="current">' . $counter . '</span></li>';
    else
    $pagination.= '<li><a href="' . $link . $counter . $end_link . '" data-action="refresh">' . $counter . '</a></li>';
    }
    }
    }

    if($page < $counter - 1){
    $pagination.= '<li><a href="' . $link . $next . $end_link . '" data-action="refresh">İleri &raquo;</a></li>';
    $pagination.= '<li><a href="' . $link . $lastpage . $end_link . '" data-action="refresh">Son</a></li>';
    }else{
    $pagination.= "<li><span class='disabled' >İleri &raquo;</span></li>";
    $pagination.= "<li><span class='disabled'>Son ></span></li>";
    }

    }

    ?>
  • 05-06-2015, 13:02:11
    #3
    Buradaki sınıfı kullanarak basit şekilde öğeleri sayfalayabilirsin.

    Kullanımı zaten bağlantıdaki sayfada mevcut ama kısaca bahsedeyim:

    require 'sayfalama.sinifi.php';
    $sayfalama = new Paginator(10,'sayfa'); // Bir sayfadaki gönderi sayısı 10, $_GET değeri 'sayfa'
    $sayfalama->set_total('100'); // Toplam gönderi sayısı
    $sorgu = 'SELECT * FROM ogeler ' . $sayfalama->get_limit();
    
    // Öğeleri listele
    
    echo $sayfalama->page_links(); // Sayfa numaralarını göster
    ogeler.php?sayfa=5 gibi ya da ogeler?sayfa=5 vb.