• 15-05-2008, 15:02:20
    #1
    Üyeliği durduruldu
    Merhaba Arkadaslar ben bi basit makale sitesi yapiyorum. .

    Kategori icerik goruntuleme tamam .. Ama

    goster.php 'de Mesela 5 tane haber ekledim . listeleme yapiyorum olmuyor. .


    Acaba nasil listeleme yaparim <1-2-3-4-5-6-7-8-9> gibi..

    <?php
     
     
    $page = $_SERVER['PHP_SELF']; 
    $limit = "3"; // Kaç kayitta bir sayfalama yapilacak ? 
    if(empty($_GET['paged'])) { $paged ="1";} 
    else{ $paged=$_GET['paged']; 
    } 
    $kac_tane=ceil($kac_tane);//bir yukarıya yuvarladık 
     
    $limitt="5"; 
    $i=$paged-$limitt; 
    $sinir=$paged+$limitt; 
    if($sinir>$kac_tane){ $sinir=$kac_tane;} 
    if($i<1){ $i="1";} 
    // Kayitlari yazdiralim ( son kayittan itibaren ) 
    $son = ($paged-1)*$limit; //burası çok güzel 
    $query = "SELECT * From icerik where kat_id='$kat_id' order by id limit $son,$limit"; 
    $veri = mysql_query ($query); 
    while($cikart = mysql_fetch_array($veri)) { 
     
     
     
     
    $baslik=$cikart["baslik"];
    $icerik=$cikart["icerik"];
    $ekleyen=$cikart["ekleyen"];
    $tarih=$cikart["tarih"];
    $haber_resim=$cikart["haber_resim"];
     
    if ($say%2) 
     
    ?>
    <table border="0" cellpadding="0" cellspacing="0" width="450" align="center">
    
    <table border="0" id="table2" cellspacing="0" cellpadding="0" width="410">
    <tr>
    <td width="85" rowspan="2">
    <p><img src='<?php echo $haber_resim; ?>' title='Duyuru Resmi' width='90' height='80' ></p>
    </td>
    
    <td width="317" valign="top">
    
    <font color='black'><b>&nbsp;Konu :</b></font> <? echo $baslik; ?> 
    </td>
    </tr>
    
    <tr>
    <td width="317" valign="top" align="left">
    
    <font color='red'><b>&nbsp;Mesaj :</b></font> 
    <?
    $ozet = substr(nl2br(stripslashes($cikart["icerik"])),0,40);
    $str = "<a href=icerik.php?id=" . $cikart['id'] . "> ...Devamı </a>";
    ?>
    <? echo "$ozet $str " ; ?>
    
    </td>
    
    
    </tr>
    
    <tr>
    <td width="402" colspan="2">
    
    <table border="0" width="102%" cellpadding="0" style="border-collapse: collapse">
    <tr>
    <td width="216">
    
    <font color='black'><b>Ekleyen :</b></font>
    <? echo $ekleyen; ?>
    </td>
    <td>
    
    <font color='black'><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Eklenme tarihi :</b></font> <? echo $tarih; ?>
    
    </table>
    <hr>
     
     
     
    </div></div>
     
     
    </div></body>
    </html>
    <? 
    $say++; 
    } 
    // Sayfalama linklerini ekrana yazdiralim 
    if( $paged>$limitt) 
    { 
    echo ("<a href=$page?paged=1>[ilksayfa]/a>"); } 
    for($i; $i<=$sinir-1; $i++) { 
     
    echo("<a href=$page?paged=$i title='Ilk Sayfa'><font color='red'>$i,</a>"); 
    } 
    if( $sinir<$kac_tane) 
    { 
    echo ("<font color='red'><a href=$page?paged=$kac_tane>>Son sayfa</a>"); } 
    else{ echo ("</a><a href=$page?paged=$i title='Diğer sayfaya geç'><font color='red'>$i<font color='black'>[Bitti]</a>"); } 
     
     
    ?>
  • 15-05-2008, 15:09:47
    #3
    Üyeliği durduruldu
    yok ben benim goster.php icin istemistim yardim eden olurmu die zaten bu koydugum goster.php'de listeleme var ama Kategorileme icin calismiyor normal calisiyor. ziyaretci defteri vs icin
  • 15-05-2008, 15:34:43
    #4
    Üyeliği durduruldu
    ViPeR adlı üyeden alıntı: mesajı görüntüle
    yok ben benim goster.php icin istemistim yardim eden olurmu die zaten bu koydugum goster.php'de listeleme var ama Kategorileme icin calismiyor normal calisiyor. ziyaretci defteri vs icin
    site üzerinden gösterebilir misin ?
    bende de aynı sorun vardı, biraz kurcalayınca çözmüştüm.
  • 15-05-2008, 15:43:42
    #5
    her konuya aynı mesajı yazıyorum ama nabıyım çok tutulan konuları anlatmışız demekki
    Sayfalama Görüntülü Videolu Dersi:
    https://www.r10.net/php/129983-php-go...si-turkce.html
    Not: Dersler Bizim tarafımızdan hazırlanmıştır ve tamamen Türkçe'dir.
  • 15-05-2008, 16:00:09
    #6
    Üyeliği durduruldu
    biraz daha farklı konuları anlatmaya başlayın, bu ara çok talep var php ye : )
  • 15-05-2008, 17:44:47
    #7
    Üyeliği durduruldu
    Nettek adlı üyeden alıntı: mesajı görüntüle
    site üzerinden gösterebilir misin ?
    bende de aynı sorun vardı, biraz kurcalayınca çözmüştüm.
    Localde yapiyorum ama tüm kodlarini koyiyim kategori , goster , icerik vs
  • 15-05-2008, 17:48:31
    #8
    Üyeliği durduruldu
    goster.php

    Listelenme yapilacak kisim suanda yapildi ama calismiyor

    <?php
    
    
    
    $page = $_SERVER['PHP_SELF']; 
    $limit = "3"; // Kaç kayitta bir sayfalama yapilacak ? 
    
    if(empty($_GET['paged'])) { $paged ="1";} 
    else{ $paged=$_GET['paged']; 
    } 
    
    $kac_tane=ceil($kac_tane);//bir yukarıya yuvarladık 
    
    
    $limitt="5"; 
    
    $i=$paged-$limitt; 
    $sinir=$paged+$limitt; 
    if($sinir>$kac_tane){ $sinir=$kac_tane;} 
    if($i<1){ $i="1";} 
    // Kayitlari yazdiralim ( son kayittan itibaren ) 
    $son = ($paged-1)*$limit; //burası çok güzel 
    $query = "SELECT * From icerik  where kat_id='$kat_id' order by id limit $son,$limit"; 
    $veri = mysql_query ($query); 
    while($cikart = mysql_fetch_array($veri)) { 
    
    
    
    
    
    $baslik=$cikart["baslik"];
    $icerik=$cikart["icerik"];
    $ekleyen=$cikart["ekleyen"];
    $tarih=$cikart["tarih"];
    $haber_resim=$cikart["haber_resim"];
    
    
    if ($say%2) 
    
    
    ?>
    
    <table border="0" cellpadding="0" cellspacing="0" width="450" align="center">
    		
    
    <table border="0" id="table2" cellspacing="0" cellpadding="0" width="410">
    	<tr>
    		<td width="85" rowspan="2">
    <p><img src='<?php echo $haber_resim; ?>' title='Duyuru Resmi' width='90' height='80' ></p>
    		</td>
    		
    		<td width="317" valign="top">
    		
    <font color='black'><b>&nbsp;Konu :</b></font> <? echo $baslik; ?>		
    		</td>
    	</tr>
    	
    	<tr>
    		<td width="317" valign="top" align="left">
    		
    <font color='red'><b>&nbsp;Mesaj :</b></font> 
    <?
    $ozet   = substr(nl2br(stripslashes($cikart["icerik"])),0,40);
      $str = "<a href=icerik.php?id=" . $cikart['id']  . ">  ...Devamı </a>";
    	?>
    <? echo  "$ozet $str " ; ?>
    		
    		</td>
    		
    		
    	</tr>
    	
    	<tr>
    		<td width="402" colspan="2">
    		
    		<table border="0" width="102%" cellpadding="0" style="border-collapse: collapse">
    	<tr>
    		<td width="216">
    		
    <font color='black'><b>Ekleyen :</b></font>
    <? echo $ekleyen; ?>
    
    		</td>
    		<td>
    		
    <font color='black'><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Eklenme tarihi :</b></font> <? echo $tarih; ?>
    		
    
    	</table>
    
    <hr>
    
    
    
    
     </div></div>
    
    
    
    </div></body>
    </html>
    
    <? 
    
    $say++; 
    } 
    // Sayfalama linklerini ekrana yazdiralim 
    if( $paged>$limitt) 
    { 
    echo ("<a href=$page?paged=1>[ilksayfa]/a>"); } 
    
    for($i; $i<=$sinir-1; $i++) { 
    
    
    echo("<a href=$page?paged=$i title='Ilk Sayfa'><font color='red'>$i,</a>"); 
    } 
    if( $sinir<$kac_tane) 
    
    { 
    echo ("<font color='red'><a href=$page?paged=$kac_tane>>Son sayfa</a>"); } 
    
    else{ echo ("</a><a href=$page?paged=$i title='Diğer sayfaya geç'><font color='red'>$i<font color='black'>[Bitti]</a>"); } 
    
    
    
    ?>
    icerik.php goster.php'deki haberlerin ici


    <?php 
    
    // Db bağlantımızın olduğu ayarlar.php yi çağırıyoruz. 
    include("ayarlar.php"); 
    
    // URL den makalenin id numarasını alıyoruz. 
    @$id = $_GET['id']; 
    
    
    /* makale_id, makale_baslik, makale_metni alanlarını makaleler tablosundan seç.Ve url üzerinden gelen makale_id i tabloda olan makale_id e eşitle.Bu da bize hangi makaleden geldiysek bize onun makale_metinini göstermemizi sağlar. */ 
    $sorgu = mysql_query("SELECT id, baslik, icerik, ekleyen , tarih  , sayac , haber_resim FROM icerik WHERE id = '" . $id . "'"); 
    
    // mysql_fetch_array ile verileri bir dizi olarak alıyoruz. 
    while($yaz = mysql_fetch_array($sorgu)) 
    { 
    echo "Ekleyen : $yaz[ekleyen]<br>";
    echo "Eklenme Tarihi : $yaz[ekleyen]<br>";
    echo "Baslik : $yaz[baslik]<br>";
    echo "Okunma Sayisi : $yaz[sayac]<br>";
    
    echo "Icerik ;<br><br> $yaz[icerik]<br>";
            
    ?> 
    <?
    $yaz['sayac']++; 
           
            mysql_query('UPDATE `icerik` SET `sayac` = ' . $yaz['sayac'] . ' WHERE `id` = ' . $yaz['id'] . ' LIMIT 1'); 
    
    }
    ?>
    
    <?
    $id    = $_GET['id'];
    
    $ip = GETENV("REMOTE_ADDR"); 
    echo "<font color='red'>Ip Adresiniz : $ip</font>"; 
    echo "<table border=\"1\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#FFFFFF\" width=\"100%\" height=\"50\">";
    $yorumlaricek=@mysql_query("Select id, icerik_id, ekleyen , tarih , yorum  From haberyorum where icerik_id='$id' and onay='1'");
    while($yazdir=@mysql_fetch_array($yorumlaricek)){
    	$id=$_GET["id"];
    	$icerik_id=$yazdir["icerik_id"];
    	$ekleyen=$yazdir["ekleyen"];
    	$tarih=$yazdir["tarih"];
    	$yorum=$yazdir["yorum"];
    	echo "<tr>
       
     <td width=\"100%\" height=\"50\" bgcolor=\"#E2E2E2\"><br><font color='darkblue'>
    
    
    <b>Yapilan Yorumlar ;<br><br><br></font><font color='darkblue'>Ekleyen :<font color='red'> $ekleyen <br></font><font color='darkblue'> Tarih :<font color='red'> $tarih <br></b></font><br><font color='black'></font><font color='darkblue'><b>Yorum :</b><font color='red'> $yorum</td>
      </tr>
    
    ";
    }
    echo "</table>";
    ?>
    
    
    </div></body>
    </html>
  • 15-05-2008, 19:42:48
    #9
    Kimlik doğrulama veya yönetimden onay bekliyor.
    kendi kullandığım bir class'ı paylaşayım , daha önce benzeri bir konuda yine bu kodu yazmıştım ancak pek aramayı sevmiyoruz sanırım

    include edeceğiniz sınıf yapısını barındıran dosya sayfala.php

    sayfala.php ye ait kodlar
    class sayfala
    {
        var $sql;
        var $getvar;
        var $rows;
        var $start;
        var $getvar_val;
        var $sayfala;
        var $result;
        
        function __construct($sql,$getvar,$length)
        {
            $this->result=null;
            $this->sql = $sql;
            $this->getvar = $getvar;
            $this->rows = 0;
            $this->start = 0;
            $this->getvar_val = 1;
            $this->sayfala = null;
            $this->SetLength($length);
            $this->GetStart();
            $this->doQuery();
        }
        
      function SetLength($length)
      {
          $this->length = (int)$length;
          if($this->length<0)
          {
              $this->length = 0;
          }
      }
      
      function doQuery()
      {
          $sql = trim($this->sql);
          $sql = substr($sql,6);
          $sql = 'SELECT SQL_CALC_FOUND_ROWS '.$sql.' limit '.$this->start.', '.$this->length;
          $this->result = mysql_query($sql);
          $sql = "SELECT FOUND_ROWS()";
          $result = mysql_query($sql);
          $this->rows = mysql_result($result,0);
      }
     
      function Set_Getvar_val()
      {
          $this->getvar_val = (int)$_GET[$this->getvar];
          if($this->getvar_val<1)
          {
              $this->getvar_val = 1;
          }
      }
      function GetStart()
      {
          $this->Set_Getvar_val();
          $this->start = (($this->getvar_val-1)*$this->length);
      }
      
        function show($next="->" ,$last="<-",$separator=" ")
        {
            $array = $this->sayfala();
            $str = array();
            foreach($array as $k => $v)
            {
                if($k!='next'&&$k!='last')
                {
    
                    if($k==$this->getvar_val)
                    {
                        $str[] = ''.$k.'';
                    }
                    else
                    {
                        $str[] = '<a href="'.$v.'">'.$k.'</a>';
                    }
    
                }
            }
            $str = implode($separator, $str);
            $rt = $array['last']===null?"":'<a title="Önceki sayfa" href="'.$array['last'].'">'.$last.'</a>'.$separator;
            $rt .= $str.$separator;
            $rt .= $array['next']===null?"":'<a title="Sonraki sayfa" href="'.$array['next'].'">'.$next.'</a>';
            return $rt;
        }
        
       function sayfala($margin=10)
        {
            $path = $_GET;
            $newpath = $PHP_SELF."?";
            foreach($path as $key => $value)
            {
                if($key!=$this->getvar)
                {
                    $newpath .= $key."=".$value;
                    $newpath .="&amp;";
                }
            }
            $newpath .= $this->getvar;
    
            $linkpaths = array();
            $current = $this->start / $this->length + 1;
            $pages = ceil(($this->rows/$this->length));
            $pagerstart = $current-$margin;
            $pagerstart = ($pagerstart<1)?1:$pagerstart;
            $pagerend = $current+$margin;
            
            $pagerend = ( $pagerend > $pages ) ? ( ceil( ( $this->rows / $this->length ) ) ): $pagerend;
    
            for($i=$pagerstart;$i < ($pagerend+1);$i++)
            {
                $linkpaths[$i] = $newpath."=".($i);
            }
            if($linkpaths[($current+1)]!=null)
            {
                $linkpaths['next']=$linkpaths[($current+1)];
            }
            if($linkpaths[($current-1)]!=null)
            {
                $linkpaths['last']=$linkpaths[($current-1)];
            }
            return $linkpaths;
        }
    }
    ?>
    sql sorgularınızı sayfalamak istediğiniz sayfanın içinde sayfala sınıf yapısını tanımlayın

    require('sayfala.php');
    $sql=("select * from tablo");
    $sayfala = new sayfala($sql,'sayfa',50); // Her sayfada kaç kayıt olsun
    while($bak = mysql_fetch_object($sayfala->result))
    {
    // sonuçlar burada
    }
    
    // Sayfa linklerinin çıkması için aşağıdaki kısım
    echo $sayfala->show();
    kolay gelsin