mysql sorgusu - blog yazılarını ve limitli yorumlar

2 Cevap php

Comments & I 2 tablolar var mesaj var. Ben mysql kullanarak her blog yazısı giriş altında 15 mesaj ve en fazla 2 en son yorumların listesini görüntülemek istiyorum.

Veritabanı şeması bu gibi görünüyor

posts_table: 
post_id, post_txt, post_timestamp

comments_table: 
post_id, comment_txt, comment_timestamp

nasıl mysql sorgu 15 Mesajları ve ilgili yorumlarınızı (yazı başına max 2 en son olanlar) seçmek amacıyla bakmak gerekir?

teşekkürler

2 Cevap

MySQL LIMIT

SELECT * FROM posts_table LIMIT 0, 15

Ve en son yorumu çekin:

SELECT * FROM comments_table ORDER BY comment_timestamp DESC LIMIT 0, 2

Ben birlikte nasılsa iki sorgu JOIN size bırakacağım ...

Öncelikle ben çok gibi mesajları seçmek istiyorsunuz

$resource = mysql_query('SELECT * FROM posts LIMIT 0,10'); //your own query in place here to get posts

    $posts = array();
    while($row = mysql_fetch_assoc($resource))
    {
        $query = sprintf('SELECT * FROM comments WHERE post_id = %d',$row['post_id']);
        $comments = mysql_query($query);
        while($row2 = mysql_fetch_assoc($comments))
        {
            $row['comments'] = $row2;
        }
        $posts[] = $row;
    }

Sonra şablon / görünümünde

foreach($posts as $post)
{
   //Print out your main posts data here.
   foreach($post['comments'] as $comment)
   {
      //Print out your comments here!
   }
}

Umarım bu yardımcı olur