COUNT(*)保持返回零(0)

时间:2015-02-27 22:29:02

标签: php mysqli

此代码:

while($row = $results->fetch_assoc())
{

    //Count function
    $count_likes=$mysqli->query("SELECT COUNT(*) as TOTAL_COMMENT_LIKES FROM `comment_likes` WHERE comment_id_fk='".$row["comment_id"]."'");

    if($count_likes->num_rows > 0){
        echo $row["comment_id"];
        $row_array=$count_likes->fetch_array(MYSQLI_ASSOC);
    } else {
        $row_array['TOTAL_COMMENT_LIKES'] = ' ';
    }
    //End count function

    echo '<div class="media" id="item_'.$row["comment_id"].'">';
    echo '<p class="pull-right"><small>'. time_elapsed_string($row['date']) . '</small></p>';
    echo '<div class="media-left">';
    echo '<img src="images/avatar.png" height="35" width="35">';
    echo '</div>';
    echo '<div class="media-body">';
    echo '<a href="#">Bo Broberg</a> ';
    echo convert_clickable_links($row["content"]);
    echo '<p><small><a href="">' . $row_array['TOTAL_COMMENT_LIKES']. ' Like</a> - <a href="">Report</a> - <a href="#" class="del_button" id="del-'.$row["comment_id"].'">Delete</a></small></p>';
    echo '</div>';
    echo '</div>';

}

给我这个输出

  

Bo Broberg Jomen visst #hehe#ras2015 1赞 - 报告 - 删除

     

10小时前Bo Broberg Awesome 0赞 - 报告 - 删除

正如你所看到的,在第二篇文章中,Bo Broberg或任何人都没有按下类似按钮,但它显示为0。

如何删除零?

如果没有喜欢,请不要显示0,只显示喜欢的数量。

3 个答案:

答案 0 :(得分:0)

它始终显示为零,因为SELECT COUNT(*) ...将始终返回&gt; 0行。

鉴于此,您可以使用以下方法修复下面的三元示例:

echo '<p><small><a href="">' 
    . ((int)$row_array['TOTAL_COMMENT_LIKES'] > 0)  
        ? what you want to happen with likes
        : what you don't if there aren't any
    . (the rest)

答案 1 :(得分:0)

也许这是一种解决方法,但它无论如何都为我做了

$row = mysqli_fetch_row($result);
 if($result->num_rows === 0)
 {
    $how_many='';
 } 

答案 2 :(得分:-1)

简写三元运算符(查找更多信息)

echo '<p><small><a href="">' . $row_array['TOTAL_COMMENT_LIKES'] ?: "". ' Like</a> - <a href="">Report</a> - <a href="#" class="del_button" id="del-'.$row["comment_id"].'">Delete</a></small></p>';