0

几乎我有一个像下面这样的代码,我试图</tr><tr>在每 6 个结果之后添加。

echo "<table><tr>";

$query="SELECT * WHERE id='$id' ORDER BY date ASC";
$result=mysql_query($query);

if (mysql_num_rows($result) > 0) {
while($rts = mysql_fetch_array($result)){

$cdata1 = $rts['cdata1'];
$cdata2 = $rts['cdata2'];

echo "<td>$cdata1 and $cdata2</td>";

}
}else{
echo "<td>no results</td>";
}
echo "</tr></table>";
4

1 回答 1

1
echo "<table><tr>";

$query="SELECT * WHERE id='$id' ORDER BY date ASC";
$result=mysql_query($query);

$i = 0;

if (mysql_num_rows($result) > 0) {
while($rts = mysql_fetch_array($result)){

$cdata1 = $rts['cdata1'];
$cdata2 = $rts['cdata2'];

echo "<td>$cdata1 and $cdata2</td>";

if(++$i % 6 == 0) {
   echo '</tr><tr>';
}

}
}else{
echo "<td>no results</td>";
}
echo "</tr></table>";

升级版:

什么意思if(++$i % 6 == 0)代码:

  1. ++$i等于$i = $i + 1;
  2. $i % 6方法$i modulo 6
  3. 如果 $i 模 6 等于 0 则回显</tr><tr>

所以我们可以写成:

$i = $i + 1;
if($i % 6 == 0) {
   echo '</tr><tr>';
}

http://php.net/manual/en/internals2.opcodes.mod.php

http://php.net/manual/en/language.operators.increment.php

于 2011-02-27T11:13:43.577 回答