• 01-11-2008, 16:59:16
    #1
    Üyeliği durduruldu
    Merhaba,
    iki adet tablo tutuyorum.
    yazılar tablosu;
    $id, baslik, onyazi, şeklinde.
    bir de bu yazılara dil kategorisi verdim.
    mesela türkçe dilinin kategorisine göre yazı listelemek istiyorum.
    nasıl bir yöntem uygulayacağım ?
    dil tablosu içerisinde
    $id ve dilid şeklinde tablolar bulunuyor..




    normal şekilde içeriği bu şekilde listeliyorum, fakat bunu dediğim gibi dilid'e göre listelemek istiyorum.






    <?php
    $sor=mysql_query("select * from yazilar");
    while($yaz=mysql_fetch_array($sor)){
    $id=$yaz['id'];
    $baslik=$yaz['baslik'];
    $hit=$yaz['hit'];
    $tarih=$yaz['tarih'];
    $katid=$yaz['katid'];
    $title=$yaz['title'];
    $onyazi=$yaz['onyazi'];
    $devaminioku=$yaz['devaminioku'];
    $dilid=$yaz['dilid'];
    
    $katcek=mysql_fetch_array(mysql_query("select * from kategori where id='$katid'"));
    $katadi=$katcek['katadi'];
    $dilcek=mysql_fetch_array(mysql_query("select * from kategori where id='$dilid'"));
    $diladi=$dilcek['diladi'];
    
    }
    
    ?>
    <?
    # Ana Sayfada 12 tane konu baþlýðý ve önyazý listeleniyor...
    $devaminioku= "Devamini oku...";
    $sql = mysql_query ("SELECT * FROM yazilar ORDER BY id DESC LIMIT 5"); 
    while($goster=mysql_fetch_array($sql)){
    echo "<h5><p><a href=\"makaleoku.php?id=".$goster['id']."\">".$goster['baslik']."</a></h5>";
    echo "<p>".$goster['onyazi']."<br>";
    echo "<h6><p><a href=\"makaleoku.php?id=".$goster['id']."\">".$devaminioku."</a></h6>";
    echo "<br>";
     } 
    ?>
  • 01-11-2008, 17:49:00
    #2
    Yazılara dil_id diye bir alan aç,
    sonra diller tablosundaki tr'nin idsini verirsen
    Türkçe olanlar sıralanır.
    $sor=mysql_query("select * from yazilar where dil_id=(Select id from diller where dil_name='tr')");
  • 01-11-2008, 18:07:38
    #3
    Üyeliği durduruldu
    ben aşağıdaki gibi listeledim ve istediğim oldu fakat sadece 1 tane listeleme yapıyor... halbuki desc limit ile birden fazla sayı girdim



    $sor=mysql_query("select * from yazilar where dil_id=(Select id from diller where dil_name='tr')");
    [/QUOTE]
    $sor=mysql_query("select * from yazilar where dilid=(Select id from dil where diladi='Türkçe')ORDER BY id DESC LIMIT 0,5");
    $yaz=mysql_fetch_array($sor);
    $hit=$yaz['hit'];
    $tarih=$yaz['tarih'];
    $katid=$yaz['katid'];
    $title=$yaz['title'];
    $onyazi=$yaz['onyazi'];
    $devaminioku=$yaz['devaminioku'];
    $dilid=$yaz['dilid'];
    $diladi=$yaz['diladi'];

    $devaminioku= "Devamini oku...";
    echo "<h5><p><a href=\"makaleoku.php?id=".$yaz['id']."\">".$yaz['baslik'];"</a></h5>";
    echo "<p>".$goster['onyazi']."<br>";
    echo "<h6><p><a href=\"makaleoku.php?id=".$yaz['id']."\">".$devaminioku."</a></h6>";
    echo "<br>";
    ?>
    [/PHP]
  • 01-11-2008, 18:16:46
    #4
    while döngüsü kullanmadığından 1 tane yazdırması doğal
  • 01-11-2008, 18:25:53
    #5
    Üyeliği durduruldu
    MerT adlı üyeden alıntı: mesajı görüntüle
    while döngüsü kullanmadığından 1 tane yazdırması doğal
    en başında while kullanmıştım sonra kaldırmışım
    tamamdır çok teşekkür ederim, ufak yerlerde takılıyorum zaten zor bir iş olsa bu kadar takılmam
  • 01-11-2008, 18:28:55
    #6
    Nettek adlı üyeden alıntı: mesajı görüntüle
    en başında while kullanmıştım sonra kaldırmışım
    tamamdır çok teşekkür ederim, ufak yerlerde takılıyorum zaten zor bir iş olsa bu kadar takılmam
    Farkettim ilkinde kullanmışsın
    Kolay gelsin