• 15-11-2009, 02:19:06
    #1
    Üyeliği durduruldu
    Soru basit. Başlıktan da anlaşılır düzeyde. 100 girdi listelendiğinde mesele yok ama 10 000 girdi olunca işler sarpa sarıyor

    Mysql çıktılarını sayfaya bastırırken, ne yapmam gerekli de 10'arlı 20'şerli sayfalara bölsün sistem sonuçları .

    Bir çok makale okudum ama pek verimli gelmedi bana . Bu konuyu iyi derecede özimsemiş ve yazmış bir arkadaşın makalesi bana çok şey katacaktır. Bu konuda bilgisi olan paylaşabilir mi ?

    Yahut bir örnek dizgelenirse o da kâfi olacak.

    Şimdiden teşekkürler.

    Edit : Aslında soru basit demişim ama soruyu eksik ve yanlış sormuşum. Arama sonuçlarını listeletmek istedim

    tumurunler.php

    <?php
        //Include the PS_Pagination class
        include('ps_pagination.php');
        //Connect to mysql db
        $conn = mysql_connect('localhost', 'kadi', 'sifre');
        mysql_select_db('vtaban',$conn);
        mysql_query("SET NAMES 'latin5'");
        mysql_query("SET CHARACTER SET latin5");
        mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'"); 
        $sql = 'select Urun from Musteri';
        //Create a PS_Pagination object
        $pager = new PS_Pagination($conn, $sql, 3, 3, 'param1=valu1&param2=value2');
        //The paginate() function returns a mysql
        //result set for the current page
        $rs = $pager->paginate();
        //Loop through the result set
        while($row = @mysql_fetch_assoc($rs)) {
            echo $row['Urun'];
        }
        //Display the navigation
        echo $pager->renderFullNav();
    ?>
    Bu değerleri sayfaya bastırıp dedğim gibi listeliyor.

    Ancak arama sonuçlarımı bu pagination dosyası ile ilişiklenidremedim.

    Arama sonuçlarını listelettiğim kısım ise,

    urunbul.php
    <?php
    
    //Mysql Bağlantı 
    $baglan = mysql_connect("localhost","kadi","sifre");
    mysql_query("SET NAMES 'latin5'");
    mysql_query("SET CHARACTER SET latin5");
    mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'"); 
    if (!$baglan)
      {
      die('Baglanamadim be abi: ' . mysql_error());
      }
    mysql_select_db("vtabani", $baglan);
    //Zararlı Kodları Süzme
    function guvenlik($q) { 
     $q = str_replace("`","",$q); 
     $q = str_replace("&","",$q); 
     $q = str_replace("%","",$q);  
     $q = str_replace("'","",$q); 
     $q = str_replace(")","",$q);
     $q = str_replace("(","",$q);  
     $q = str_replace("<","",$q);  
     $q = str_replace(">","",$q);  
     $q=trim($q); 
     return $q; 
    } 
    //Aranılan kelime değişkene atanıyor
    $arama = guvenlik($_GET['arama']);
    // Sorgu Yapılıyor
    $sorgu = mysql_query("SELECT * FROM Musteri WHERE Urun like '%".$arama."%'");
    //Yazdırma İşlemini 
    $linkver=$_GET['arama'];
    $query = "SELECT * FROM Sloganlar WHERE Slogan='$linkver'";
    while($yaz=mysql_fetch_array($sorgu)){
    echo "<li><a href=\"urun_detay.php?id=$yaz[id] \">$yaz[Urun]</a></li>";
    }
    //Bağlantı kapatılıyor
    mysql_close($baglan)
    ?>
    umarım açıklayıcı olmuştur.
  • 15-11-2009, 14:23:59
    #2
    Üyeliği durduruldu
    bkz arama; https://www.r10.net/search.php
    sayfalama yada pagination diye aratirsaniz cok klasik ve milyon kere sorulup cevaplanan bir sorudur kendisi
  • 15-11-2009, 14:37:36
    #3
    Üyeliği durduruldu
    Alıntı
    sayfalama yada pagination diye aratirsaniz cok klasik ve milyon kere sorulup cevaplanan bir sorudur kendisi
    @hocam sayfalama kısmı tamam da ancak arama sayfasındaki sonuçları sayfalayamadım ben