• 15-09-2021, 22:51:36
    #1
    Merhaba Arkadaşlar
    aşağıdaki 1 ci sıradaki SQL kod yapısını 2 ci sıradaki SQL kod yapısına nasıl entegre edebilirim bu konuda yardımcı olabilirmisiniz
    teşekkürler.

    1 ci SQL kod yapısı

    <?php
    if((!isset($_GET['getir']) || empty($_GET['getir']))){
        $getir="";
    }else{
      $getir=temizle($_GET['getir']);
    if($getir=="firsatlardagoster"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='1' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='1' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else if($getir=="vitrindegoster"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1')as ilanid FROM dopingsiparislerdetaylari Where dopingturu='2' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='2' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else if($getir=="onecikanilanlar"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1')as ilanid FROM dopingsiparislerdetaylari Where dopingturu='3' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='3' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else {
    $getir="";
    }
    }
    ?>
    2 ci SQL kod yapısı

    <?php
        if (isset($_GET['page_no']) && $_GET['page_no']!=""){
            $page_no = $_GET['page_no'];
        } else {
            $page_no = 1;
        }
        $total_records_per_page = 2;
        $offset = ($page_no-1) * $total_records_per_page;
        $previous_page = $page_no - 1;
        $next_page = $page_no + 1;
        $adjacents = "2";
        $result_count = $db->query("SELECT COUNT(*) As total_records FROM ilan");
        $total_records = $result_count->fetch(PDO::FETCH_BOTH);
        $total_records = $total_records['total_records'];
        $total_no_of_pages = ceil($total_records / $total_records_per_page);
        $second_last = $total_no_of_pages - 1;
        $result  = $db->query("SELECT * FROM ilan LIMIT $offset, $total_records_per_page");
        while($row = $result->fetch(PDO::FETCH_BOTH)){
            echo "<tr>
            <td>".$row['id']."</td>
            <td>".$row['baslik']."</td>
            </tr>";
        }
        ?>
    [COLOR=#000000][FONT="Open Sans"][COLOR=#000000][FONT="Open Sans"][/FONT][/COLOR][/FONT][/COLOR]


  • 15-09-2021, 23:25:29
    #2
    emlak21 adlı üyeden alıntı: mesajı görüntüle
    Merhaba Arkadaşlar
    aşağıdaki 1 ci sıradaki SQL kod yapısını 2 ci sıradaki SQL kod yapısına nasıl entegre edebilirim bu konuda yardımcı olabilirmisiniz
    teşekkürler.

    1 ci SQL kod yapısı

    <?php
    if((!isset($_GET['getir']) || empty($_GET['getir']))){
        $getir="";
    }else{
      $getir=temizle($_GET['getir']);
    if($getir=="firsatlardagoster"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='1' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='1' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else if($getir=="vitrindegoster"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1')as ilanid FROM dopingsiparislerdetaylari Where dopingturu='2' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='2' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else if($getir=="onecikanilanlar"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1')as ilanid FROM dopingsiparislerdetaylari Where dopingturu='3' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='3' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else {
    $getir="";
    }
    }
    ?>
    2 ci SQL kod yapısı

    <?php
        if (isset($_GET['page_no']) && $_GET['page_no']!=""){
            $page_no = $_GET['page_no'];
        } else {
            $page_no = 1;
        }
        $total_records_per_page = 2;
        $offset = ($page_no-1) * $total_records_per_page;
        $previous_page = $page_no - 1;
        $next_page = $page_no + 1;
        $adjacents = "2";
        $result_count = $db->query("SELECT COUNT(*) As total_records FROM ilan");
        $total_records = $result_count->fetch(PDO::FETCH_BOTH);
        $total_records = $total_records['total_records'];
        $total_no_of_pages = ceil($total_records / $total_records_per_page);
        $second_last = $total_no_of_pages - 1;
        $result  = $db->query("SELECT * FROM ilan LIMIT $offset, $total_records_per_page");
        while($row = $result->fetch(PDO::FETCH_BOTH)){
            echo "<tr>
            <td>".$row['id']."</td>
            <td>".$row['baslik']."</td>
            </tr>";
        }
        ?>
    [COLOR=#000000][FONT="Open Sans"][COLOR=#000000][FONT="Open Sans"][/FONT][/COLOR][/FONT][/COLOR]


    Nacizane tavsiyem jQuery pagination kullanın.
  • 15-09-2021, 23:28:08
    #3
    develops adlı üyeden alıntı: mesajı görüntüle
    Nacizane tavsiyem jQuery pagination kullanın.
    çok araştırdım bulamadım, örnek verme şansın varmı Hocam
  • 15-09-2021, 23:33:18
    #4
    emlak21 adlı üyeden alıntı: mesajı görüntüle
    çok araştırdım bulamadım, örnek verme şansın varmı Hocam
    Ben bunu kullanıyorum. Memnunum.
    https://github.com/neighbordog/jquery-paginate
  • 15-09-2021, 23:53:45
    #5
    develops adlı üyeden alıntı: mesajı görüntüle
    Ben bunu kullanıyorum. Memnunum.
    https://github.com/neighbordog/jquery-paginate
    sağol hocam, dataTables ile yaptım Dropdown Toggle menüde sıkıntı yaşadım ondan dolayı bu kodlamaya başvurmak zorunda kaldım
  • 17-09-2021, 00:12:11
    #6
    PHP den anlayan yardım edecek Arkadaş yokmu?
  • 17-09-2021, 00:14:21
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Sadece limit tablosundaki verilere sayfalama yapmak istiyorsunuz doğrumudur ? Eğer öyle ise skype imzamda ulaşın halledelim hemen.
  • 17-09-2021, 00:19:59
    #8
    Nejla adlı üyeden alıntı: mesajı görüntüle
    Sadece limit tablosundaki verilere sayfalama yapmak istiyorsunuz doğrumudur ? Eğer öyle ise skype imzamda ulaşın halledelim hemen.
    Hocam 1 ci kodlarımı, 2 ci kod yapısına uyarlamaya çalışmam gerekiyor

    bu kod yapısını,

    <?php
    if((!isset($_GET['getir']) || empty($_GET['getir']))){
        $getir="";
    }else{
      $getir=temizle($_GET['getir']);
    if($getir=="firsatlardagoster"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='1' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='1' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else if($getir=="vitrindegoster"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1')as ilanid FROM dopingsiparislerdetaylari Where dopingturu='2' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='2' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else if($getir=="onecikanilanlar"){
    $getir=" && (id in(SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1')as ilanid FROM dopingsiparislerdetaylari Where dopingturu='3' && bitisTarihi > '".date("Y-m-d H:i:s")."') || icerikid in (SELECT (select ilanid from dopingsiparisler where id=dopingsiparislerdetaylari.siparisid && odemedurum='1' && durum='1') as ilanid FROM dopingsiparislerdetaylari Where dopingturu='3' && bitisTarihi > '".date("Y-m-d H:i:s")."'))";
    }else {
    $getir="";
    }
    }
    ?>
    bu kod yapısında bold olarak işaretlediğim alana uyarlamam lazım

    <?php
        if (isset($_GET['page_no']) && $_GET['page_no']!=""){
            $page_no = $_GET['page_no'];
        } else {
            $page_no = 1;
        }
        $total_records_per_page = 2;
        $offset = ($page_no-1) * $total_records_per_page;
        $previous_page = $page_no - 1;
        $next_page = $page_no + 1;
        $adjacents = "2";
    [B]    $result_count = $db->query("SELECT COUNT(*) As total_records FROM ilan");[/B]
        $total_records = $result_count->fetch(PDO::FETCH_BOTH);
        $total_records = $total_records['total_records'];
        $total_no_of_pages = ceil($total_records / $total_records_per_page);
        $second_last = $total_no_of_pages - 1;
        $result  = $db->query("SELECT * FROM ilan LIMIT $offset, $total_records_per_page");
        while($row = $result->fetch(PDO::FETCH_BOTH)){
            echo "<tr>
            <td>".$row['id']."</td>
            <td>".$row['baslik']."</td>
            </tr>";
        }
        ?>
  • 17-09-2021, 04:31:44
    #9
    @emlak21; ne yapmak istediğinizi tam anlayamadım, net birşey söylemek için 1. kod buluğundaki $getir değişkeninin kullanıldığı ana sql sorgusunu da görmek lazım. Biraz ezbere bir kod olacak ama aşağıdaki şekilde bir deneyebilirsiniz.

    $result_count = $db->query("SELECT COUNT(*) As total_records FROM ilan WHERE 1 $getir");
    Ayrıca $resultda çektiğiniz sorguyada entegre etmeniz lazım.

    $result  = $db->query("SELECT * FROM ilan WHERE 1 $getir LIMIT $offset, $total_records_per_page");

    Ayrıca biraz konu dışı olacak ama konuda konusu geçtiği için nacizane bir tavsiye olacak. datatables veya javascript (jquery) bazlı sayfama kullanıyorsanız bunu ajaxla yapmanızı tavsiye ederim. datatablesın ajax desteği var dokümantasyondan bulabilirsiniz. Bunun sebebi js bazlı sayfalamada tüm veriler tek seferde sayfa kaynağına çekersiniz sonradan js kütüphane sayfalara böler. Ama tüm veri kaynağa çekilmiş olur, sayfa kaynağınız büyür, pagespeed puanınız düşer, mysql ve cpu kullanımınız artar. Verilerin sayısı çoğaldıkça, sayfada binlerce veri olduğu durumlarda sayfanızın açılma süresi dakikaları bulabilir hatta timeouta düşebilir. Tıklanılan sayfadaki veri ajaxla anlık çekilip güncellenirse bu tip sorunlarla karşılaşılmaz.