0

我有一些代码为查询的每个结果创建一个 div。我的问题是,我只希望为我限制的结果集创建相同数量的 div。

例如,这个查询产生大约 8-9 行但是,在这种情况下,如果 $busroute==2,并且只有 2 个结果匹配这个,我只想创建 2 个 div 并关闭它们。现在,正如我所拥有的,它正在为“while”循环的每次迭代创建一个 div - /div 集。

    <?php 

    mysql_data_seek( $result,0);
    while ($i2=mysql_fetch_array($result)) {
    $busnumber=$i2['NAME'];
    $busroute=$i2['route'];
    $busdirection=$i2['direction'];
    $timediff=$i2['TimeDiff'];
    $timestamp=$i2['TIMESTAMP'];        
    if ($busroute=='2'){
    echo "<div class='businfo'>";
    echo "<p>Bus #: ".$busnumber."<br>Direction: ".$busdirection."<br>Bus Route : ".$busroute."<br>"; 
    echo "Timestamp : $timestamp</p>";
    }
    echo "</div>";
    }

?>

所以,如果$busroute==2,并且$busroute==2有两个结果,那么下面应该只输出两次。

    echo "<div class='businfo'>";
    echo "<p>Bus #: ".$busnumber."<br>Direction: ".$busdirection."<br>Bus Route : ".$busroute."<br>"; 
    echo "Timestamp : $timestamp</p>";
    }
    echo "</div>";

提前感谢您的帮助。

  • d -
4

1 回答 1

0

您的代码已经符合您的要求。我认为“</div>”应该在你的 IF 里面。

代替

if ($busroute=='2'){
echo "<div class='businfo'>";
echo "<p>Bus #: ".$busnumber."<br>Direction: ".$busdirection."<br>Bus Route : ".$busroute."<br>"; 
echo "Timestamp : $timestamp</p>";
}
echo "</div>";

if ($busroute=='2'){
echo "<div class='businfo'>";
echo "<p>Bus #: ".$busnumber."<br>Direction: ".$busdirection."<br>Bus Route : ".$busroute."<br>"; 
echo "Timestamp : $timestamp</p>";
echo "</div>";  
}
于 2013-02-21T20:26:10.933 回答