• 13-06-2009, 21:18:23
    #1
    Arkadaşlar çekilen verileri sayfaya ayırmak istiyorum.

    Mesela konuları id a göre en sondan başa dogru sıralıyorum. Sıralanırken 5 tane sıralanmasını ve altta eski konular ve ya 2. sayfa şeklinde tuş olmasını istiyorum. 2. sayfadada öteki konuları


    Yani Wordpress Blogspot gibi. İlk sayfada en son 5 konu öteki sayfada öteki 5 konu.

    İlgilenen herkeze çok teşekkür ederim...
  • 13-06-2009, 21:20:08
    #2
    Kgpager Class'ı ile sayfalama işlemlerini rahatlıkla yapabilirsiniz.
    phpclasses.org 'da vardı zannedersem.
  • 13-06-2009, 21:34:36
    #3
    uysal_rockci adlı üyeden alıntı: mesajı görüntüle
    Kgpager Class'ı ile sayfalama işlemlerini rahatlıkla yapabilirsiniz.
    phpclasses.org 'da vardı zannedersem.
    Hocam Kgpager Class biraz araştırdım ama malesef çözemedim

  • 13-06-2009, 21:36:22
    #4
    sadece araştırdınız mı ,
    yoksa indirip denediniz mi
    kullanımı oldukça basit , içerisinde ilgili sql sorgunuzu, bir sayfada kaç adet içerik gösterileceğini, sayfa sayısını vs yazdıktan sonra rahatlıkla kullanabilirsiniz.
    test.php şeklinde bir demo dosyası da olması lazım içinde.
  • 13-06-2009, 22:03:36
    #5
    uysal_rockci adlı üyeden alıntı: mesajı görüntüle
    sadece araştırdınız mı ,
    yoksa indirip denediniz mi
    kullanımı oldukça basit , içerisinde ilgili sql sorgunuzu, bir sayfada kaç adet içerik gösterileceğini, sayfa sayısını vs yazdıktan sonra rahatlıkla kullanabilirsiniz.
    test.php şeklinde bir demo dosyası da olması lazım içinde.
    hocam ben kodları kendi hazırladıgım kodlara oturtmaya çalıştırdım.
    ama şu şekilde hata alıyorum.

    Warning:  Missing argument 11 for kgPager::pager_set(), called in C:\AppServ\www\kg\test.php on line 36 and defined in C:\AppServ\www\kg\kgPager.class.php on line 103
    test.php 36. Satır

    $kgPagerOBJ -> pager_set($pager_url, $total_records, $scroll_page, $per_page, $current_page, $inactive_page_tag, $previous_page_text, $next_page_text, $first_page_text, $last_page_text);
    kgPager.class.php 103. Satır
     function pager_set ($pager_url, $total_records, $scroll_page, $per_page, $current_page, $inactive_page_tag, $previous_page_text, $next_page_text, $first_page_text, $last_page_text, $pager_url_last) {
  • 13-06-2009, 22:23:59
    #6
     <? $count = 0;$a= "";
     function habersayfalama($limit,$sayfano,$satir_sayisi=0,$sayfaadi='index.php',$adresdeger='')
    {
      $habersayfalama = '';
      if($satir_sayisi > $limit)
      {
        $sayfa_sayisi = $satir_sayisi / $limit;
        $sayfa_sayisi = ceil($sayfa_sayisi);
        if($sayfano == $sayfa_sayisi)
        {
          $to = $sayfa_sayisi;
        } elseif($sayfano == $sayfa_sayisi - 1)
        {
          $to = $sayfano + 1;
        } elseif($sayfano == $sayfa_sayisi - 2)
        {
          $to = $sayfano + 2;
        } else {
          $to = $sayfano + 3;
        }
        if($sayfano < 4)
        {
          $from = 1;
        } else {
          $from = $sayfano - 3;
        }
    
        if (6 < $sayfano)
        $habersayfalama .= ' <b><a href="'.$sayfaadi.'?sayfa=1'.$adresdeger.'"><b>1</b></a>...</b> ';
    
        for($i=$from; $i <= $to; $i++)
        {
          if($i == $sayfano)
          {
            $habersayfalama .= '<b>['.$i.']</b> -';
          } else {
            $habersayfalama .= '<a style="text-decoration:none; color:#000000" href="'.$sayfaadi.'?sayfa='.$i.$adresdeger.'">'.$i.'</a> - ';
          }
        }    if ($to < $sayfa_sayisi)    {
          $habersayfalama .= ' <b>...<a href="'.$sayfaadi.'?sayfa='.$sayfa_sayisi.$adresdeger.'" style="text-decoration:none; color:#000000"> '.$sayfa_sayisi.'</a></b> ';
        }
      }
      if($habersayfalama == "")
      {
        $habersayfalama = 'Sayfa 1';
      }
      return $habersayfalama;
    } 
    $limit = 5; // Bir sayfada kac haber gosterecegını burdan belirlersin
    $kosul = 'where kat_id = 1'; // Burdanda istediğin kategori id sini belirlersin.
    $tabloadi = 'site';
    $sorgu = mysql_query("SELECT COUNT(*) FROM  $tabloadi $kosul");
    $satir_sayisi = mysql_result($sorgu, 0);
    @$sayfa = abs(intval($_GET['sayfa']));
    if(empty($sayfa) || $sayfa > ceil($satir_sayisi/$limit))
    {
      $sayfa = 1;
      $baslangic = 0;
    } else {
      $baslangic = ($sayfa - 1) * $limit;
    }
    $sorgu = mysql_query("SELECT * FROM TABLO $kosul ORDER BY id DESC LIMIT $baslangic,$limit");
    				while($yaz = mysql_fetch_array($sorgu)){
    				$text = substr(nl2br($yaz["text"]),0,600);
    				?>

    Sayfalama fonksiyonumuz bu.Bunu sayfada göstermek içinde asagıdaki kodu kullancaksın.


    Sayfa Numaraları : <? echo habersayfalama($limit,$sayfa,$satir_sayisi,'index.php','&islem=1');?>
    Umarım işini gorur.

    Buyuk ıhtımalle $kosul degişkeninde belirtilen kat_id sende olmayacagı ıcın sorun yaratabılır. Bu yuzden verileri cekmek istedigin tabloyu buraya yazarsan net bır sekilde yardımcı olabilirim.
  • 13-06-2009, 22:36:30
    #7
    Erturk adlı üyeden alıntı: mesajı görüntüle
     <? $count = 0;$a= "";
     function habersayfalama($limit,$sayfano,$satir_sayisi=0,$sayfaadi='index.php',$adresdeger='')
    {
      $habersayfalama = '';
      if($satir_sayisi > $limit)
      {
        $sayfa_sayisi = $satir_sayisi / $limit;
        $sayfa_sayisi = ceil($sayfa_sayisi);
        if($sayfano == $sayfa_sayisi)
        {
          $to = $sayfa_sayisi;
        } elseif($sayfano == $sayfa_sayisi - 1)
        {
          $to = $sayfano + 1;
        } elseif($sayfano == $sayfa_sayisi - 2)
        {
          $to = $sayfano + 2;
        } else {
          $to = $sayfano + 3;
        }
        if($sayfano < 4)
        {
          $from = 1;
        } else {
          $from = $sayfano - 3;
        }
    
        if (6 < $sayfano)
        $habersayfalama .= ' <b><a href="'.$sayfaadi.'?sayfa=1'.$adresdeger.'"><b>1</b></a>...</b> ';
    
        for($i=$from; $i <= $to; $i++)
        {
          if($i == $sayfano)
          {
            $habersayfalama .= '<b>['.$i.']</b> -';
          } else {
            $habersayfalama .= '<a style="text-decoration:none; color:#000000" href="'.$sayfaadi.'?sayfa='.$i.$adresdeger.'">'.$i.'</a> - ';
          }
        }    if ($to < $sayfa_sayisi)    {
          $habersayfalama .= ' <b>...<a href="'.$sayfaadi.'?sayfa='.$sayfa_sayisi.$adresdeger.'" style="text-decoration:none; color:#000000"> '.$sayfa_sayisi.'</a></b> ';
        }
      }
      if($habersayfalama == "")
      {
        $habersayfalama = 'Sayfa 1';
      }
      return $habersayfalama;
    } 
    $limit = 5; // Bir sayfada kac haber gosterecegını burdan belirlersin
    $kosul = 'where kat_id = 1'; // Burdanda istediğin kategori id sini belirlersin.
    $tabloadi = 'site';
    $sorgu = mysql_query("SELECT COUNT(*) FROM  $tabloadi $kosul");
    $satir_sayisi = mysql_result($sorgu, 0);
    @$sayfa = abs(intval($_GET['sayfa']));
    if(empty($sayfa) || $sayfa > ceil($satir_sayisi/$limit))
    {
      $sayfa = 1;
      $baslangic = 0;
    } else {
      $baslangic = ($sayfa - 1) * $limit;
    }
    $sorgu = mysql_query("SELECT * FROM TABLO $kosul ORDER BY id DESC LIMIT $baslangic,$limit");
                    while($yaz = mysql_fetch_array($sorgu)){
                    $text = substr(nl2br($yaz["text"]),0,600);
                    ?>
    Sayfalama fonksiyonumuz bu.Bunu sayfada göstermek içinde asagıdaki kodu kullancaksın.


    Sayfa Numaraları : <? echo habersayfalama($limit,$sayfa,$satir_sayisi,'index.php','&islem=1');?>
    Umarım işini gorur.

    Buyuk ıhtımalle $kosul degişkeninde belirtilen kat_id sende olmayacagı ıcın sorun yaratabılır. Bu yuzden verileri cekmek istedigin tabloyu buraya yazarsan net bır sekilde yardımcı olabilirim.

    Hocam öncelikle teşekkür ederim..

    Verdiginiz kodu kendi veritabanıma göre ayarladım ama parse hatası verdi

    Parse error:  syntax error, unexpected $end in C:\AppServ\www\bot\des.php on line 70
  • 13-06-2009, 22:52:01
    #8
    65 - 75 satırları arasındaki kodları yazabilirmisin dostum.
  • 13-06-2009, 22:56:39
    #9
    Erturk adlı üyeden alıntı: mesajı görüntüle
    65 - 75 satırları arasındaki kodları yazabilirmisin dostum.

    65. }
    66. $sorgu = mysql_query("SELECT * FROM wp_posts $kosul ORDER BY id 
    67. DESC LIMIT $baslangic,$limit");
    68.               while($yaz = mysql_fetch_array($sorgu)){
    69.                $text = substr(nl2br($yaz["text"]),0,600);
    70.                ?>