1

チェックボックスを表示して、4 カウント後に次の行に最大 4 まで表示し、次の行で再び改行するようにしたいと考えています。私が試したコードに従っていますが、成功しませんでした -

<?php 
  $i=1;
  while($row=mysql_fetch_array($result)) {
    if( $i<5 ) {
?>
      <input type="checkbox" id="<?=$row['CategoryName']?>" name="<?=$row['CategoryName']?>" /><?=$row['CategoryName']?>
<?
      $i++;
    }
?>
  <br />
<?php
  $i=1;
  }
?>
4

9 に答える 9

3

私はこれを提案します:

<?php 
$i=0;
while($row=mysql_fetch_array($result)) 
{
    ?>
    <input type="checkbox" id="<?=$row['CategoryName']?>" name="<?=$row['CategoryName']?>" /><?=$row['CategoryName']?>
    <?php
    $i++
    if ( $i % 4 == 0 ) echo '<br />';
    }
?>
于 2012-05-29T10:09:28.000 に答える
1

こんにちは以下のコードを試してください

<?php 
   $i=1;
   while($row=mysql_fetch_array($result)) {
   if( $i<5 ) {
 ?>
     <input type="checkbox" id="<?php echo $row['CategoryName']; ?>"  
      name="?=$row['CategoryName']?>" /> 
<?php 
    echo $row['CategoryName']; 
    $i++;
  }else{
?>
 <br />
 <?php
 $i=1;
 }
}
?>

ありがとう

于 2012-05-29T10:13:29.180 に答える
1

jQuery を使用する.eq()- http://api.jquery.com/eq/

ここでコードを確認してください - http://dipaksblogonline.blogspot.in/2011/01/ul-count-li-elements-display-in.html

于 2012-05-29T10:06:12.540 に答える
1

if (fmod($i, 4) == 0)の代わりに使用if ($i < 5)

于 2012-05-29T10:07:40.243 に答える
1

これを試して:

$i=0;
while($row=mysql_fetch_array($result)) { 
    $i++;
    echo '<input type="checkbox" id="'.$row['CategoryName'].'" name="'.$row['CategoryName'].'" />'.$row['CategoryName'];
    if($i % 4 == 0) {
        echo '<br />';
    }
}
于 2012-05-29T10:08:16.937 に答える
1

モジュロ演算子を使用してこれを実現できます。例:

<?php
for($i = 0; $i < 20; $i++) {
    echo $i . "&nbsp;";
    if ($i % 4 == 3)
        echo "<br />";
}

収量

0 1 2 3 
4 5 6 7 
8 9 10 11 
12 13 14 15 
16 17 18 19 
于 2012-05-29T10:09:00.557 に答える
1
$i = 1;
for($x = 0; $x < 20; $x++) {
echo "your element here";
if($i%4==0){
echo "</br>";
}
$i++;
}

よろしく : TechNew.In

于 2012-05-29T10:22:04.950 に答える
1

すぐに解決できる答えがたくさんあるので、より多くのコードを書く代わりに、体系的なアプローチを提案します
。アルゴリズムを書くことから始めて、次にコードを書きます。

  1. データのセットを反復処理したい:

    // while row
        // echo input
    // end while
    
  2. 定義済みの数の入力の後に改行が必要です。

    // break_after = 4
    // initiate counter (counter = 0)
    // while row
        // increment counter
        // echo input
        // if counter == break_after
            // echo linebreak
            // reset counter
    // end while
    
  3. コメントをコードに置き換えます。

    die('Piece of cake...');
    

    (私はコードを書かないと言いました。あなたはすでにそれを行う方法を知っています。)

于 2012-05-29T10:25:09.110 に答える
0

このようにしてください:-

<?php 
    $i=1;
    while($row=mysql_fetch_array($result)) 
    {
       if( $i<5 )
        {                           
?>
<input type="checkbox" id="<?=$row['CategoryName']?>" name="<?=$row['CategoryName']?>" /><?=$row['CategoryName']?>
<?php
        $i++;
        }
       else {
    ?>
    <br />
    <?php
        $i=1;
       }
    }    
?>
于 2012-05-29T10:11:45.200 に答える