0

我正在从此代码生成我的复选框。但是,我很难让它由 5 个输出生成,然后一旦显示第 5 个输出,它应该跳到下一行。将不胜感激任何帮助。

<?php 
    $result=mysql_query("SELECT * FROM tbl_tourism_type order by type_name ");
    while($row = mysql_fetch_array($result))
    echo '<input type="checkbox" name="type" value='.$row['type_id'].'>'
            .'<label>'.$row['type_name']. '</label>'.'<br>'.'<br>';
?>
4

4 回答 4

1
<?php 
$result=mysql_query("SELECT * FROM tbl_tourism_type order by type_name ");
$i=1;
while($row = mysql_fetch_array($result))
{
echo '<input type="checkbox" name="type" value='.$row['type_id'].'><label>'.$row['type_name']. '</label>';
if($i%5==0)
{
   echo "<br>";
}
$i++;
}
?>
于 2013-01-25T06:02:22.547 回答
0
$result = mysql_query("SELECT * FROM tbl_tourism_type order by type_name ");
                $i=0;
                while($row = mysql_fetch_array($result)){
                if($i%5 == 0){
                 //skip to next line
                 //continue??
                 }
                echo '<input type="checkbox" name="type" value='.$row['type_id'].'>'.'
                <label>'.$row['type_name']. '</label>'.'<br>'.'<br>';                   
                $i++;
                }
于 2013-01-25T06:00:22.323 回答
0

您的问题是如何跳过每 5 个条目并改为换行?

试试这样:

<?php 
    $i=0;
    $result=mysql_query("SELECT * FROM tbl_tourism_type order by type_name ");
    while($row = mysql_fetch_array($result)) 
    {
        if (++$i % 5)
            echo sprintf ( '<input type="checkbox" name="type" value="%s">'
                          .'<label>%s</label>'."\n", 
                           htmlentities($row['type_id']), 
                           htmlentities($row['type_name']) );
        else
            echo "<br>\n";
    }
?>

除了迭代结果中的所有条目之外,只需使用每次迭代都会增加的计数器。然后,在迭代内部,如果计数器模 5 不为零,则仅输出当前条目。因此,如果它不是 5 的净倍数。

于 2013-01-25T06:01:47.343 回答
0

这样做

<?php 
    $i =1;
    $result=mysql_query("SELECT * FROM tbl_tourism_type order by type_name ");
    while($row = mysql_fetch_array($result)){
    if($i == 5){
      echo "<br>";
      $i = 1;
    }
    else
    echo '<input type="checkbox" name="type" value='.$row['type_id'].'>'
            .'<label>'.$row['type_name']. '</label>';
    $i++;
}
?>
于 2013-01-25T06:02:54.380 回答