0

我是 php 新手,我尝试构建自己的博客系统。到目前为止,除了一个问题外,一切正常。

我尝试显示每篇博文的评论数量。但它不起作用,我不知道为什么。

这是代码:

include('db URL');

$query = $db->prepare("SELECT post_id, ... cat_name, cat_id FROM posts ORDER BY nse_p_id DESC");
$query->execute();
$query->bind_result($post_id, $cat, $cat_id);

现在到 HTML 部分

 <div class="media-body span8">
        <?php                   
            while($query->fetch()): 
        ?>

            <div class="blogpostfield">
                <div  class="blogpostinfo">
                    Category <?php echo "<a href='sort.php?cat_id=$cat_id'><b>".$cat."</b></a>"?>
                    with <?php 
                        $comCount = $db->query("SELECT * FROM comment WHERE com_post_id = '$post_id'");
                        if($comCount){
                            echo $comCount;
                        }else{
                            echo "ERROR - count unsuccessful";
                        }

                        ?> 
                    comments

                </div>
            </div>      
        <?php endwhile?>
</div>

这只是一个片段。其他一切正常。问题是 imo while 循环中的查询不起作用。任何人都可以帮忙吗?

提前致谢。

安迪

4

1 回答 1

0

I guess you want the number of rows in your result.

$result = $db->query("SELECT * FROM comment WHERE com_post_id = '$post_id'");
$comCount = $result->num_rows;

You could also just count the number of rows in the query:

$result = $db->query("SELECT COUNT(*) FROM comment WHERE com_post_id = '$post_id'");
$comCount = $result->fetch_field;
于 2013-10-25T15:51:26.763 回答