PHP用于数据库中的动态循环

PHP用于数据库中的动态循环,php,Php,我正在根据此代码生成我的复选框。但是,我很难让它由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

我正在根据此代码生成我的复选框。但是,我很难让它由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>';
?>

$result=mysql\u查询(“按类型名称从tbl\u旅游\u类型订单中选择*);
$i=0;
while($row=mysql\u fetch\u数组($result)){
如果($i%5==0){
//跳到下一行
//继续??
}
回音“.”
“.$row['type_name']”.“
”.
”; $i++; }
您的问题是如何跳过每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的干净倍数


<?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++;
}
?>
你喜欢这样吗

<?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++;
}
?>


您能再解释一下吗?它已经在一个新行中显示了下一个结果,所以在while循环中放置一个计数器,当它==5Kinda hacky时继续,但是如果你想要一个1行:
如果(@++$i==5)继续是。但是,我想要一个复选框,而不是复选框
<?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++;
}
?>