2012-04-26 32 views
0

我有此代码以数据库字母顺序回显字段中的字段,并在其中以字母开头的字母。数据库中的信息不够宽,无法适应页面的100%宽度,因此我想将信息拆分为两个单独的div并将它们并排放置。CSS很容易,但我不确定如何拆分他们。数据库中有50个项目,所以我想让第一个foreach语句在25处停下来,然后继续从第二个div中停止的地方继续。将每个语句拆分为按字母顺序排列的两个div

这里是我的代码:

<?php 
    $previousLetter = false; 
?> 
<?php foreach($this->clubs as $clubs) : ?> 
    <?php 
    $firstLetter = substr($clubs->club_name, 0, 1); 
    if ($firstLetter != $previousLetter) { 
    ?> 
     <h3 id="club-link-header"><u><?php echo $firstLetter; ?></u></h3> 
    <?php } ?> 
     <a id="club-link" href="<?php echo $this->url(array('controller' => 'club-description', 'action' => 'index', 'club_id' => $clubs->id));?>"><br /> 
     <?php echo $this->escape($clubs->club_name);?></a> 
    <?php $previousLetter = $firstLetter; ?> 
<?php endforeach; ?> 

感谢

回答

1

你可以试试下面的代码。我希望你能理解它。

<?php 
    $previousLetter = false; 
?> 
<?php 
$i=1; // have a counter variable 
foreach($this->clubs as $clubs) : ?> 
    <?php 
    $firstLetter = substr($clubs->club_name, 0, 1); 
    if ($firstLetter != $previousLetter) { 
    if($i==1){ 
     echo "<div class="left_class">"; // open left div 
    } 
    ?> 
     <h3 id="club-link-header"><u><?php echo $firstLetter; ?></u></h3> 
    <?php } ?> 
     <a id="club-link" href="<?php echo $this->url(array('controller' => 'club-description', 'action' => 'index', 'club_id' => $clubs->id));?>"><br /> 
     <?php echo $this->escape($clubs->club_name);?></a> 
    <?php $previousLetter = $firstLetter; ?> 
<?php 
    if($i==25){ 
     echo "</div>"; //close left div 
     echo "<div class="right_class">"; // open right div 
    } 

    if($i==50){ 
     echo "</div>"; //close right div 
    } 

$i++; // increment the counter variable for each loop 
endforeach; 
?> 
+0

它的工作..有一个主要缺陷..我需要的信息在右边,能够漂浮它,而不会破坏我的布局。但是,如果我将PHP的正确类代码移动到顶端,因为我认为PHP中断了。 – Rex89 2012-04-26 14:58:18

0

你需要在另一个div后清除浮动。

<div style="clear:both;"></div>