PHP影响列布局
我的页面主体的结构是由三列组成的,这些列由MYSQL数据生成,然后使用PHP将其表示为三列 下面是PHP代码和提供三列的布局。我遇到的问题是,如果数据提供了两列宽的布局,那么一切都很好,就像这样 但是,如果数据提供了一个三列宽的布局,那么它看起来是这样的 我认为问题在于第三列上的后面的div标记,但不确定解决问题的最佳方法 这是代码PHP影响列布局,php,html,mysql,Php,Html,Mysql,我的页面主体的结构是由三列组成的,这些列由MYSQL数据生成,然后使用PHP将其表示为三列 下面是PHP代码和提供三列的布局。我遇到的问题是,如果数据提供了两列宽的布局,那么一切都很好,就像这样 但是,如果数据提供了一个三列宽的布局,那么它看起来是这样的 我认为问题在于第三列上的后面的div标记,但不确定解决问题的最佳方法 这是代码 <?php $columnSelector = 0; // define a column selector ?> <?ph
<?php $columnSelector = 0; // define a column selector ?>
<?php while($row = mysql_fetch_array($result)) :?>
<?php if ($columnSelector == 0): ?>
<div class="row-fluid">
<article class="span4 mid">
<div class="img">
<img src="images/<?php echo $row['image']; ?>" alt="post4" />
<div class="overlay"></div>
</div>
<div class="info">
<p class="tags">
<?php echo $row['event_type']; ?>
<?php echo $row['location']; ?>
</p>
<h1><a href=""><?php echo $row['event_title']; ?></a></h1>
<p class="details"> | </p>
<p class="text">
<?php echo $row['event_details_short']; ?>
</p>
</div>
</article>
<?php elseif ($columnSelector == 1): ?>
<article class="span4 mid">
<div class="img">
<img src="images/<?php echo $row['image_link']; ?>" alt="post4" />
<div class="overlay"></div>
</div>
<div class="info">
<p class="tags">
<?php echo $row['event_type']; ?>
<?php echo $row['location']; ?>
</p>
<h1><a href=""><?php echo $row['event_title']; ?></a></h1>
<p class="details"> <?php echo $row['date']; ?> | <?php echo $row['posted_by']; ?></p>
<p class="text">
<?php echo $row['event_details_short']; ?>
</p>
</div>
</article>
<?php elseif ($columnSelector == 2): ?>
<article class="span4 mid">
<div class="img">
<img src="images/<?php echo $row['image_link']; ?>" alt="post4" />
<div class="overlay"></div>
</div>
<div class="info">
<p class="tags">
<?php echo $row['event_type']; ?>
<?php echo $row['location']; ?>
</p>
<h1><a href=""><?php echo $row['event_title']; ?></a></h1>
<p class="details"> <?php echo $row['date']; ?> | <?php echo $row['posted_by']; ?></p>
<p class="text">
<?php echo $row['event_details_short']; ?>
</p>
</div>
</article>
</div>
<?php endif; ?>
<?php $columnSelector++; // advance to the next row?>
<?php $columnSelector %= 3; // reset to zero every third event?>
<?php endwhile; ?>
可能是if语句不让下面的代码显示出来。
这行:好的,解决了,问题是这里的最后一个标签:
</article>
</div>
只有一两列显示时需要它,但第三列不需要,所以我用这个替换了它
</div>
</article>
<?php if ($columnSelector == 1){ ?>
</div>
<?php } ?>
<?php endif; ?>
现在,当有三列时,div不显示,布局正确。但是如果我删除了这一行,那么这些列的结构就不会正确。请使用模板引擎。你在混合代码和HTML。这使得维护你的东西更加困难。请读这篇文章。