为每个评论框运行“SQL”查询将加快多级评论系统的速度?

时间:2014-03-13 09:40:31

标签: php mysql sql database-design

我正在使用php开发多级(评论和排斥)评论系统。 所有注释和repelis都在同一个数据库表中。 在该函数中,该系统必须为每个注释框运行'sql'查询,以便以正确的顺序生成它们。 所以,在处理成千上万的评论时,这会强烈地减缓我的系统。 以下是我的功能,

function getComments($row) {
    echo "<li class='comment'>";
    echo "<div class='aut'>".$row['author']."</div>";
    echo "<div class='comment-body'>".$row['comment']."</div>";
    echo "<div class='timestamp'>".$row['created_at']."</div>";
    echo "<a href='#comment_form' class='reply' id='".$row['id']."'>Reply</a>";
    $q = "SELECT * FROM threaded_comments WHERE parent_id = ".$row['id']."";
    $r = mysql_query($q);
    if(mysql_num_rows($r)>0)
        {
        echo "<ul>";
        while($row = mysql_fetch_assoc($r)) {
            getComments($row);
        }
        echo "</ul>";
        }
    echo "</li>";
}

或者我有另一个想法,在两个表格中添加评论和排斥。当评论显示时, 将所有repelis数据获取到Array并使用for loop将其推送到相关注释框。

哪种方法最适合这项工作。最好的表现?

0 个答案:

没有答案