• 20-09-2010, 16:55:27
    #1
    arkadaşlar ne başlık yazacagımı bulamadım,

    şimdi şöyle brşey yapmak istiyorum,

    ben icerik tablosunun içinden 20 tane içerik çekmek istiyorum.

    $sorgurast=mysql_query("select * from icerik order by id DESC limit 0,20");

    bunu çekiyorum sorun burada degil,

    ben buna ek olarak bu içerigin id sie göre downlaod linki ekliyorum ve güncelliyorum ve güncelleme tarihi var ben bu sorguya ek olarak bu sorguyu eklemek istiyorum yani

    $sorgurast=mysql_query("select * from icerik order by id DESC limit 0,20");
    $sorgurast1=mysql_query("select * from dow where icerikid='$sorgurat[id]' order by id DESC limit 0,20");
    
    gibi yani yukarıdaki sorguma ek olarak bu şartı dow en son güncellenen tarihe göre çekmesini isitoyrum nasıl yapmam gerekiyor ?
  • 20-09-2010, 17:02:40
    #2
    "dow" tablosunda, bu en son güncellenen tarihi yazdığınız/update ettiğiniz bi alan yokmu? son_guncelleme gibi bi alanınız varsa ona göre WHERE yazabilirsin.

    yoksa son_guncelleme diye bir alan oluştur, alan tipi olarak "TIMESTAMP" ı seç. Bu alan tipi o kaydın oluşturulma veya update edilme zamanını linux formatında saklar.

    ve sorguda şu şekilde çalışır :

    $sorgurast1=mysql_query("select * from dow where icerikid='$sorgurat[id]' order by son_guncelleme DESC limit 0,20");
  • 20-09-2010, 17:11:36
    #3
    şimdi güzel söylüyorsun ama içerikler ne olacaak ?

    ben şöyle düşün bir içerige yorum sistemi yaparsınzı ya o şekilde downlaod yaptım,

    yani her içerikid sine göre dow tablo açtırdım ve icerikid olarak yazdırdım tarih'de var ve sonrada birlikte çagırıyorum,

    yani icerik çekip içerigi dow'a göre yazdırmak istiyorum biraz karmaşık oldu sanırm ?
  • 20-09-2010, 17:25:49
    #4
    biz dow mow bilmeyiz sana işin mantiğinda yardimci olmaya calisiriz ama olayı anlayabilidğimi şuan söyleyemiyecem. sorgu içinde sorgu diyorsan buda mümkündür yada sıralama tarzı şeyler ORDER BY xxx DESC/ASC falan bunları biliyorsun heralde. Şuan kavrayamadım senin olayı kafam durgun
  • 20-09-2010, 23:05:15
    #5
    $sorgurast=mysql_query("select * from icerik order by id DESC limit 0,20");
    $sorgurast1=mysql_query("select * from dow where icerikid='$sorgurat[id]' order by id DESC limit 0,20");
    bu ikisi INNER JOIN ile birleştirilir yani şöyle

    $sorgu=mysql_query("select icerik.id,icerik.falan,icerik.filan,dow.id from icerik INNER JOIN dow ON icerik.id=dow.id order by icerik.id desc limit 0,20")
    $dizi=mysql_fetch_array($sorgu);
    yukardakini çağırıken şöyle çağırısın
    echo $dizi['falan'];
    echo $dizi['id'];
    Bu konu için inner join çalış derim her zaman lazım