0

カスタム フィールドにデータがない場合にテーブルの行が形成されないようにするために使用できるコードがあるかどうか知りたいです。

たとえば、これは私のテーブルです:

        <tr>
            <td><?php echo $place_1; ?></td>
            <td><?php echo $person_1; ?></td>
            <td><?php echo $status_1; ?></td>
            <td><a href="<?php echo $website_1; ?>"></a></td>
        </tr>
        <tr>
            <td><?php echo $place_2; ?></td>
            <td><?php echo $person_2; ?></td>
            <td><?php echo $status_2; ?></td>
            <td><a href="<?php echo $website_2; ?>"></a></td>
        </tr>
        <tr>
            <td><?php echo $place_3; ?></td>
            <td><?php echo $person_3; ?></td>
            <td><?php echo $status_3; ?></td>
            <td><a href="<?php echo $website_3; ?>"></a></td>
        </tr>

「$place_2 が空の場合、2 と 3 のすべてのテーブル行を非表示にする」ようにするにはどうすればよいですか?

どんな助けでも大歓迎です!

4

2 に答える 2

4

PHP を使用して、行が空でない場合にのみ行を出力することができます。

...
</tr>
<?php if ($place_2 != "") { ?>
<tr>
    <td><?php echo $place_2; ?></td>
    <td><?php echo $person_2; ?></td>
    <td><?php echo $status_2; ?></td>
    <td><a href="<?php echo $website_2; ?>"></a></td>
</tr>
<?php } ?>
<tr>
...

trこのアプローチは、要素をifブロックでラップします。同じ結果を得るには他にも多くの方法があり、他の回答に表示される場合があります。あなたの質問に基づいて、が空の$place_3場合も抑制したいようです。$place_2この場合は空になると思いますので、 に置き換えて、その要素に$place_3同じアプローチを適用できます。tr$place_2$place_3

于 2013-04-21T05:12:39.990 に答える
0

WHILE ループも使用できます。これは、任意の数の行に対して機能します。While4 を条件でチェックする行数に置き換えるだけです

<?php
 $i=0;
 while($i<4)
 {
   if($place_.$i == "")
      break; // if $place_ variable is empty no further rows are printed.
   else
   {
?>
    <tr>
        <td><?php echo $place_.$i; ?></td>
        <td><?php echo $person_.$i; ?></td>
        <td><?php echo $status_.$i; ?></td>
        <td><a href="<?php echo $website_.$i; ?>"></a></td>
    </tr> 
<?php
   } // closing bracket of else
  $i = $i + 1;
 } //end of while loop
?>
于 2013-04-21T05:38:45.350 に答える