테스트 사이트 - 개발 중인 베타 버전입니다

적폐세력들의 저항이 끈질깁니다. 채택완료

민쯩먼저깔게요 7년 전 조회 1,857

적폐청산이 멀고 험합니다.

적폐들의 저항이 장난이 아니에요,,유유

 

<table>

wr_74 wr_81 wr_88 wr_95 wr_102

</table>

 

안에 이렇게 74부터 7간격으로 102까지 5개 필드가 5개 td안에 들어갑니다.

이중 하나라도 값이 있으면 테이블을 표출하고

모두 값이 없으면 표 자체를 표출하지 않게

테이블을 감싸주는 코드를 알고 싶습니다.

 

이걸 적용해야 할 테이블이 많으므로,,

 

i++ 뭐 이런거 있자나요,,ㅎ

뭐라고 할말이 없네..

 

일전에 qa에서 답변받았는데 적용이 안돼서...

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
플래토
7년 전

그러면 원하시는구조는

제가 위에 명시해드린거와 조금 다르겠네요

 

1row에 7개의 <td>가 존재하고

각 row의 1col의 값이 없을때 안나오면되는거겠네요

 

 

확인샘플 : http://deb.kr/test/qna2.php

 

</p>

<p><?php</p>

<p>//확인용 변수값

$wr_74 = 1;

$wr_75 = 1;

$wr_76 = 1;

$wr_77 = 1;

$wr_78 = 0;

$wr_79 = 1;

$wr_80 = 1;

$wr_81 = 2;

$wr_82 = 2;

$wr_83 = 2;

$wr_84 = 2;

$wr_85 = 0;

$wr_86 = 2;

$wr_87 = 2;

$wr_88 = 0;

$wr_89 = 0;

$wr_90 = 0;

$wr_91 = 0;

$wr_92 = 0;

$wr_93 = 0;

$wr_94 = 0;

$wr_95 = 4;

$wr_96 = 4;

$wr_97 = 4;

$wr_98 = 4;

$wr_99 = 4;

$wr_100 = 4;

$wr_101 = 4;

$wr_102 = 4;</p>

<p>

$ss = "";

$chk = false;

$j = 1;  // 7번째인지 체크하기위한 값 for 안에 넣어도 되지만 구분하기위해 밖에서 선언

for ($i = 74; $i < 102; $i ++,$j++) {  // 값을 전부증가로 변경해서 체크합니다. <td>들을 출력하기위해서

      $vars = "wr_".$i ;

//    echo $vars."
";  // 중간에 변수가 등장하는지 확인하기위한것이라 나중에 삭제하세요          

 echo "i : ".$i." , j : ".$j."
";

       $j = $j % 7; // 7번째의 첫번째 값을 찾기위해서 

       if ($j == 1) 

       if (@${$vars}) {

           $chk = true;

           $ss .= "<tr>";

       }  

       else

          $chk = false;

 

       if ($chk ) {

            $ss .= "<td>".$vars. ":".$$vars."</td>";     

       }

       if ($chk && $j == 7)

           $ss .= "</tr>";

       

}

if ($ss)

      $ss = "<table border='1'>$ss</table>";

 

echo $ss;</p>

<p> </p>

<p> </p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

민쯩먼저깔게요
7년 전
감사합니다. 제코드가 문제가 있는건지 잘 안되는군요,,삽질을 더해봐야 할거 같습니다~

댓글을 작성하려면 로그인이 필요합니다.

너무 감사합니다.

이렇게 되어 있는데...표1( <table></table> ) 표2(<table></table> ) 표3(<table></table> )중에 

 

표1의 td안의 wr_74에 값이 있습니다. (28x20이라는)

이경우 표1은 출력되어야 하며

 

표2와 표3은 데이터가 없으므로(없다는 것은 0또는 빈레코드)

표자체를 출력시키지 않으려고 합니다.

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

플래토
7년 전

PHP 코드로 만들어볼까요

 

</p>

<p><?php</p>

<p>$ss = "";

$wr_74 = 1;</p>

<p>

for ($i = 74; $i < 103; $i += 7) {

    

    $vars = "wr_".$i ;

    echo $vars."
";  // 중간에 변수가 등장하는지 확인하기위한것이라 나중에 삭제하세요

    

    if (@${$vars}) {

        $ss .= "<td>".$$vars."</td>";

    }

}</p>

<p>if ($ss) 

    $ss = "<table><tr>$ss</tr></table>";</p>

<p>echo $ss;</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

민쯩먼저깔게요
7년 전
답변 늘 감사하고 미안합니다.

댓글을 작성하려면 로그인이 필요합니다.

그누위즈

우선 지금 php로

wr_74, wr_81을 어떻게 가져오는지 모르겠고

리스트 페이지인지 뷰페이진지 몰라

답변드리기가 어렵네요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

민쯩먼저깔게요
7년 전
아,,그렇군요,,죄송,

게시판 리스트 페이지와 뷰페이지,롸이트페이지에 적용할려구 그럽니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인