• 31-10-2015, 12:46:12
    #1
    Merhaba,

    İki tablom var

    siiryorumlari, videoyorumları

    Tek bir while döngüsü içerisinde bu yorumları listelemek istiyorum
    Örnek:

    1-Ufuk Ağlama adlı şiire yorum yaptı
    2-Ufuk Güzelim adlı videoya yorum yaptı

    1,2,3 gibi sayfalama da olacak

    veya

    videolar, siirler tablomdan üyenin eklediği içerikleri alıp tek listede bastırmak istiyorum..

    ufuk sen ne güzelsin şiirini paylaştı
    Ufuk hay böyle işin videosunu paylaştı

    gibi..

    JOIN ile deneme yaptım ama sonuç hüsran oldu

    SELECT * FROM videosiirler V INNER JOIN siirler S

    şeklinde phpmyadminden listelediğim içerikleri while döngüsüne sokup bastıramıyorum sonuç bulunamadı hatası alıyorum....

    Örnek vererek yardımcı olabilir misiniz...
    Mantığım yerle bir oldu
  • 31-10-2015, 13:44:19
    #2
    Turkdown adlı üyeden alıntı: mesajı görüntüle
    Merhaba,

    İki tablom var

    siiryorumlari, videoyorumları

    Tek bir while döngüsü içerisinde bu yorumları listelemek istiyorum
    Örnek:

    1-Ufuk Ağlama adlı şiire yorum yaptı
    2-Ufuk Güzelim adlı videoya yorum yaptı

    1,2,3 gibi sayfalama da olacak

    veya

    videolar, siirler tablomdan üyenin eklediği içerikleri alıp tek listede bastırmak istiyorum..

    ufuk sen ne güzelsin şiirini paylaştı
    Ufuk hay böyle işin videosunu paylaştı

    gibi..

    JOIN ile deneme yaptım ama sonuç hüsran oldu

    SELECT * FROM videosiirler V INNER JOIN siirler S

    şeklinde phpmyadminden listelediğim içerikleri while döngüsüne sokup bastıramıyorum sonuç bulunamadı hatası alıyorum....

    Örnek vererek yardımcı olabilir misiniz...
    Mantığım yerle bir oldu
    İki farklı tablodan ortak olan sütunları çekerken join kullanımı yapmanız gerek.
    Burada kullanıcı dışında ortak bir sütun yok.
    Aşağıdaki gibi yapabilirsiniz,

    SELECT * FROM siiryorumlari, videoyorumlari WHERE kullanici = '$kullanici'
  • 31-10-2015, 15:12:17
    #3
    Misafir adlı üyeden alıntı: mesajı görüntüle
    İki farklı tablodan ortak olan sütunları çekerken join kullanımı yapmanız gerek.
    Burada kullanıcı dışında ortak bir sütun yok.
    Aşağıdaki gibi yapabilirsiniz,

    SELECT * FROM siiryorumlari, videoyorumlari WHERE kullanici = '$kullanici'
    Kardeşim sorguyu oluşturdum

    Sorgum:
    SELECT * FROM siiryorumlar, videosiiryorumlar where siiryorumlar.uid = $turkcodeuye[id] and videosiiryorumlar.uid = $turkcodeuye[id]

    echo çıktısı
    SELECT * FROM siiryorumlar, videosiiryorumlar where siiryorumlar.uid = 18 and videosiiryorumlar.uid = 18


    Phpmyadminden sorguladığımda sorun yok veriler geliyor

    Ancak bunu while içine nasıl sokacağım bir türlü beceremedim.

    ve verileri yazdırırken atıyorum
    <?php echo $turkcode[adi]; ?>

    Burada nasıl yazdıracağım ? tüm denemelerimde başarısız oldum
  • 31-10-2015, 17:32:25
    #4
    Turkdown adlı üyeden alıntı: mesajı görüntüle
    Kardeşim sorguyu oluşturdum

    Sorgum:
    SELECT * FROM siiryorumlar, videosiiryorumlar where siiryorumlar.uid = $turkcodeuye[id] and videosiiryorumlar.uid = $turkcodeuye[id]

    echo çıktısı
    SELECT * FROM siiryorumlar, videosiiryorumlar where siiryorumlar.uid = 18 and videosiiryorumlar.uid = 18


    Phpmyadminden sorguladığımda sorun yok veriler geliyor

    Ancak bunu while içine nasıl sokacağım bir türlü beceremedim.

    ve verileri yazdırırken atıyorum
    <?php echo $turkcode[adi]; ?>

    Burada nasıl yazdıracağım ? tüm denemelerimde başarısız oldum


    $uyeid = $turkcodeuye[id];
    $query = mysql_query("SELECT * FROM siiryorumlar, videosiiryorumlar where siiryorumlar.uid = '$uyeid' AND videosiiryorumlar.uid = '$uyeid'");
    while ($yorumlar = mysql_fetch_array($query))
    {
        echo $yorumlar['tablodaki sütun adları'];
    }
  • 31-10-2015, 19:36:10
    #5
    Misafir adlı üyeden alıntı: mesajı görüntüle
    İki farklı tablodan ortak olan sütunları çekerken join kullanımı yapmanız gerek.
    Burada kullanıcı dışında ortak bir sütun yok.
    Aşağıdaki gibi yapabilirsiniz,

    SELECT * FROM siiryorumlari, videoyorumlari WHERE kullanici = '$kullanici'
    Misafir adlı üyeden alıntı: mesajı görüntüle
    $uyeid = $turkcodeuye[id];
    $query = mysql_query("SELECT * FROM siiryorumlar, videosiiryorumlar where siiryorumlar.uid = '$uyeid' AND videosiiryorumlar.uid = '$uyeid'");
    while ($yorumlar = mysql_fetch_array($query))
    {
        echo $yorumlar['tablodaki sütun adları'];
    }


    Peki bunu şöyle düşüksek..

    Tabloların alanları farklı farklı ise nasıl yapmamız gerekir ? Sadece yorum olarak değilde mesela üyenin gönderdiği tüm içerikler diyelim.

    siirler = id, adi, siir..
    videosiirler = id, baslik, embed, aciklama..

    gibi bir tablomuz var bunları yazdırırken nasıl yazdırmalıyım ? while yaptıktan sonra verileri ekrana bastırırken ayrım yapıp video ise şu şiir ise şu şeklinde nasıl olmalı?

    teşekkür ederim yardımın için.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 18:36:10 -->-> Daha önceki mesaj 17:47:50 --

    o kadar kafam bunaldı ki anlatamıyorum yapmak istediğimi galiba

    yapmak istediğim şöyle birşey

    http://buzzy.akbilisim.com/profile/root

    Burada üyenin gönderdiği içerikler kısmı var görebilirsiniz.

    Ancak ben o liste gibi ama birden çok tablodan gelen verileri listelemek istiyorum bu gösterdiğim sistemde tek tablo sanırım.. Benim yapmak istediğim siirler, videosiirler, biyografiler, yorumlar vs ve bunların yanında ayrıca hepsini tek listede listelemek istiyorum
  • 01-11-2015, 00:26:36
    #6
    İşin PHP tarafında kod değişikliği yok yalnızca veritabanı sorgunuz değişecek.
    Hangi tabloları nereye nasıl yazdıracağınızı bildirirseniz yardımcı olmaya çalışayım.
    Ekrana yazılacak içerik türü sayısı aynı olmalı. Tablo isimleri çok önemli değil

    $sql = "SELECT s.id siirid, s.adi siiradi, s.siir, v.id videoid, v.baslik, v.embed, v.aciklama
    FROM siiryorumlar s, videosiiryorumlar v 
    WHERE s.uid = '$uyeid' AND videosiiryorumlar.uid = '$uyeid'";
  • 02-11-2015, 13:57:57
    #7
    Misafir adlı üyeden alıntı: mesajı görüntüle
    İşin PHP tarafında kod değişikliği yok yalnızca veritabanı sorgunuz değişecek.
    Hangi tabloları nereye nasıl yazdıracağınızı bildirirseniz yardımcı olmaya çalışayım.
    Ekrana yazılacak içerik türü sayısı aynı olmalı. Tablo isimleri çok önemli değil

    $sql = "SELECT s.id siirid, s.adi siiradi, s.siir, v.id videoid, v.baslik, v.embed, v.aciklama
    FROM siiryorumlar s, videosiiryorumlar v 
    WHERE s.uid = '$uyeid' AND videosiiryorumlar.uid = '$uyeid'";
    Kardeşim çok teşekkür ederim şu verdiğin kod beni aydınlattı ancak ben bildiğim bir yöntemle çözdüm sorunumu..

    Yardımların için minnettarım...

    Kolay gelsin.