• 19-10-2013, 21:00:43
    #1
    Merhaba r10.net üyeleri ;

    Konular ve kategoriler tablom var. Konu eklerken kategorinin de id sini konular tabloma ekliyorum bu durumda konular tablomdaki konu_kategori ve kategoriler tablomdaki kategori_id eşlişmiş oluyor.

    Sayfanın bir yerinde kategorilerim listeleniyor. isimi tarih vb. Kategoriye ait kaç tane konu var görmek istiyorum.İki tabloyu birbirine bağladım koşulu belirtirken sıkıntı var, fakat koşulu elle 10 değerini yazdığımda bana konu sayisini getiriyor , iki tabloyu birbirine bağlayıp yapamadım aşağıda elle girdiğim sorgu var

    $query=query("SELECT * FROM konular INNER JOIN kategoriler ON kategoriler.kategori_id=konular.konu_kategori WHERE konu_kategori=[B]10[/B]");
    		$row=mysql_num_rows($query);
    		echo $row;
  • 19-10-2013, 22:22:56
    #2
    Üyeliği durduruldu
    yapmak istediğin böyle birşeymi,

    Alıntı
    A Kategorisi ( 10 konu ), B Kategorisi ( 20 Konu )
    ...

    kategorileri listelerken mi konuların içinde mi tam anlamadım ben
  • 19-10-2013, 22:36:48
    #3
    Reveloper
    $query=mysql_query("SELECT * FROM konular INNER JOIN kategoriler ON kategoriler.kategori_id=konular.konu_kategori WHERE konu_kategori=10"); 
            $row=mysql_num_rows($query); 
            echo $row;
    denermisin bi
  • 19-10-2013, 22:42:44
    #4
    RobinsonCrusoe adlı üyeden alıntı: mesajı görüntüle
    yapmak istediğin böyle birşeymi,

    ...

    kategorileri listelerken mi konuların içinde mi tam anlamadım ben
    verdiğiniz örnekdeki gibi yapmak istediğim hocam

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 22:42:44 -->-> Daha önceki mesaj 22:40:52 --

    Burti adlı üyeden alıntı: mesajı görüntüle
    $query=mysql_query("SELECT * FROM konular INNER JOIN kategoriler ON kategoriler.kategori_id=konular.konu_kategori WHERE konu_kategori=10"); 
            $row=mysql_num_rows($query); 
            echo $row;
    denermisin bi


    verdiğiniz örnek kategori 10 daki içerikleri listeler hocam
  • 19-10-2013, 23:11:42
    #5
    Üyeliği durduruldu
    group by kullanarak yapabilirsin ayrıca önce ... from kategoriler sonra konular yapman lazım ama bu şekildede olur

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 23:11:42 -->-> Daha önceki mesaj 22:49:39 --

    yapamadıysan bi dene,

    SELECT COUNT(ko.konu_kategori) as katkonu,ka.* FROM kategoriler ka INNER JOIN konular ko ON ka.kategori_id = ko.konu_kategori GROUP BY ko.konu_kategori
  • 19-10-2013, 23:42:47
    #6
    Kimlik doğrulama veya yönetimden onay bekliyor.
    $kackonu = mysql_num_rows(mysql_query("SELECT * FROM konular WHERE konu_kategori='$konu_kategori'"));
    
    echo $kackonu;
  • 19-10-2013, 23:46:39
    #7
    diyadinnet adlı üyeden alıntı: mesajı görüntüle
    $kackonu = mysql_num_rows(mysql_query("SELECT * FROM konular WHERE konu_kategori='$konu_kategori'"));
    
    echo $kackonu;
    Hocam eyw sagol burada ki eşitliği nereden alacak konu_kategori='$konu_kategori' ?
  • 20-10-2013, 00:04:27
    #8
    $sql = "SELECT id, title FROM kategoriler ORDER BY title";
    $result = mysql_query($sql);
    
    while ($row = mysql_fetch_row($result)) {
    $konu_kategori = intval($row['konu_kategori']);
    $title = stripslashes($row['title']);
    $kackonu = mysql_num_rows(mysql_query("SELECT * FROM konular WHERE konu_kategori='$konu_kategori'")); 
    
    
    echo ''.$title.' ('.$kackonu.')';
    }
    tablo yapısını tam bilmiyorum .. ama yukarıdaki örnek yardımcı olur sanırım
  • 20-10-2013, 00:56:26
    #9
    function konu_sayisi($kid){
    		$query=query("SELECT count(konu_kategori) as toplam FROM konular WHERE konu_kategori='$kid'");
    		$row=row($query);
    		return $row["toplam"];
    	}
    sorun çözüldü.