php限制'while'循环中发生的事情

时间:2013-02-21 20:10:59

标签: php while-loop

我有一些代码可以为查询的每个结果创建一个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>";
    }

&GT;

所以,如果$ 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 -

1 个答案:

答案 0 :(得分:0)

您的代码已经看起来没问题了。 我认为“&lt; / div&gt;”应该在你的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>";  
}