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 に答える