2013-04-21 3 views
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의 모든 테이블 행을 숨기?"

도움을 주시면 감사하겠습니다. 비어 있지 않을 때

답변

3

당신은 단순히에만 출력 행을 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> 
... 

이러한 접근 방식은 if 블록에서 tr 요소를 래핑합니다. 동일한 결과를 얻는 다른 많은 방법이 있으며, 다른 답변에서 나타날 수 있습니다. 질문에 따라 이 비어있는 경우 $place_3도 표시하지 않는 것으로 보입니다. 이 경우에는 $place_3이 비어 있다고 가정하므로 $place_2$place_3으로 대체하여 해당 tr 요소에 동일한 접근 방식을 적용 할 수 있습니다.

0

WHILE 루프도 사용할 수 있습니다. 이것은 모든 행에 대해 작동합니다. 체크인 할 행 수를 4로 바꾸기 만하면 While 조건

<?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 
?> 
관련 문제