在2行数据库行之后添加换行


Add line break after 2 database rows PHP

我正试图使一个页面,其中多个项目正在从数据库拉出,并在网站上显示。我想添加一个换行后,从数据库收到的每2行,所以它显示正确。

我试了很多,做了很多研究,但它仍然不起作用。有人知道我哪里做错了吗?

<?php
  $con = mysql_connect("localhost","article_user","mypassword");
  if (!$con)
  {
    die('Could not connect: ' . mysql_error());
  }
  mysql_select_db("articles", $con);
$query = "SELECT * FROM `Articles`";
$select_projects = mysql_query($query);
$xi=1;
if (mysql_num_rows($select_projects) > 0) {
    while($row = mysql_fetch_assoc($select_projects)) {
	echo '<div class="col-md-6 related-post-block">';
	echo '<div class="related-img"> <img src="file-upload/server/php/files/'.$row['image'].'" class="" alt></a> </div>';
        echo '<h3>'.$row['header'].'</a></h3>';
	echo '<p>'.$row['text'].'</p>';
	echo '</div>';
        
    			if ($xi % 2 == 0)
        			echo '<br />';
    			$xi++;
     }
}
mysql_close($db);
?>

你不需要另一个元素来改变外观,这应该通过css来解决。可能是这样的:

.related-post-block {
    margin-bottom: 15px;
}

或者如果你想内联它(我不建议):

echo '<div class="col-md-6 related-post-block" style="margin-bottom: 15px">';

当省略大括号时,它将只将下一条语句作为条件体。

if ($ x)回声"foo";echo '酒吧';将始终打印"bar"

所以它永远不会使用<br />;在if语句中添加花括号

br标签不工作后,div标签,你可以试试这个:

if ($xi % 2 == 0)
    echo '<div style="clear:both; margin-bottom:20px"></div>';
$xi++;