• 01-12-2008, 20:11:33
    #1
    Üyeliği durduruldu
    Bir tabloda yorumlar var. başka bir tabloda ise haberler var.

    Yorum eklendiğinde , haberin ID si yorumdaki id alanına ekleniyor.


    Bu gün, en çok yorumlanan haberler modülü yaparken yorum sayısına göre haberleri sıralamaya çalışmama ragmen bir kod eksiğinden ötürü yapamadım. Aşağıdaki kod betiği bu yönden başarısız bir kod betiğidir. yardımlarınız için teşekkür ederim.


    <?php
    $satirp = "0";
    $sorgux = mysql_query("SELECT * FROM yorum WHERE sayfa='haber' AND onay='EVET' ORDER BY id DESC LIMIT 10");
    $msay = mysql_num_rows($sorgux);
    
    if ($msay > 0) {
    
    ?>
    
    
    
    
    <?php 
    while ($list = mysql_fetch_array($sorgux)) {
    $id = $list["id"];
    
    
    
    $sorguZ = mysql_query("SELECT * FROM haberler WHERE haberno='$id' AND onay='EVET' ORDER BY haberno LIMIT 0,1");
    $listeg = mysql_fetch_array($sorguZ);
    $habernol = $listeg["haberno"]; 
    $hbaslikr = $listeg["hbaslik"]; 
    
    
    
    
    echo '<div class="'.$cizgi.'"><a href="'.SITE_ADRESI.'/haber/'.$habernol.'/'.dost_link($hbaslikr).'" class="onholder">'.$hbaslikr.'</a></div>';
    
    }
    }
    mysql_free_result($sorgux);
    ?>
  • 01-12-2008, 22:04:21
    #2
    Üyeliği durduruldu
    $query = 'select x.hbaslik,y.id,count(id) as top from haber x,yorum y where y.sayfa="haber" && y.onay="EVET" && x.haberno=y.id group by y.id order by top desc/asc';

    şu şekilde olur herhalde...
  • 02-12-2008, 14:21:45
    #3
    haber tablosuna bir sutun oluştur yorum_sayisi diye.Her yorum eklenmede bu yorum_sayisi için değerini 1 arttır.
    geri kalan sadece yorum_sayisi na göre sıralama olucak
    mysql_query("select * from haber order by yorum_sayisi  desc");
  • 03-12-2008, 08:28:23
    #4
    Üyeliği durduruldu
    sweatcell adlı üyeden alıntı: mesajı görüntüle
    $query = 'select x.hbaslik,y.id,count(id) as top from haber x,yorum y where y.sayfa="haber" && y.onay="EVET" && x.haberno=y.id group by y.id order by top desc/asc';
    şu şekilde olur herhalde...
    teşekkürler. bu kod sorunu çözdü.