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

여분필드 변수 질문드립니다. 채택완료

hazkiryo 9년 전 조회 2,294

</p><p><?php for ($i=0; $i<count($list); $i++) {
if ($list[$i][wr_116] == "1") {?> </p><p> </p><p>wr_116이 1 일 경우 내용 </p><p> </p><p><?php }
else if ($list[$i][wr_116] == "1,2") {?></p><p> </p><p>wr_116이 1,2 일 경우 경우 내용</p><p> </p><p><?php }
else if ($list[$i][wr_116] == "1,2,3") {?> </p><p> </p><p>wr_116이 1,2,3 일 경우 내용</p><p> 
<?php }</p><p>}?> </p><p>

 

어떤 옵션을 선택하는지에 따라 리스트화면을 다르게 구성해줘야하는데..

현재 wr_116 필드에 옵션이 1|1,2|1,2,3 이렇게 3가지 항목이 있습니다.

문제는 1,2일 경우와 1,2,3일 경우에 1이 계속 나와버립니다.

1이라는 숫자가 중복되어서 그런 것 같은데 딱 그 변수명일때만 나오게 하려면 어떻게해야하나요?

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

답변 1개

채택된 답변
+20 포인트
복스리
9년 전

좀 잘못 하시는듯 생각이 듭니다.

먼저 explode나 splite함수를 사용하여 배열롤 셋팅후 if조건으로 비요를 해야 맞을 듯합니다.

116항목에 "1|1,2|1,2,3 " 이런 내용이 있다면요..

</p><p><?php for ($i=0; $i<count($list); $i++) {</p><p> </p><p>// 먼저 여기서 explode로 |구분자를 기준으로 나눕니다.</p><p>$arr_wr_116 = explode($list[$i][wr_116],"|");</p><p> </p><p>// $arr_wr_116 <-- 요기에는 배열로 구분된 내용이 셋팅 되어있습니다.</p><p> </p><p>if ( trim($arr_wr_116[0]) == "1") {?>   // 배열에 있는 내용을  비교하기
 
wr_116이 1 일 경우 내용 
 
<?php }
else if ( trim($arr_wr_116[1]) == "1,2") {?>
 
wr_116이 1,2 일 경우 경우 내용
 
<?php }
else if ( trim($arr_wr_116[2]) == "1,2,3") {?> 
 
wr_116이 1,2,3 일 경우 내용
 
<?php }
}?> </p><p>

요렇게 해야 정상적으로 비교됩니다. 즉 구분된 내용을 배열에 셋팅 후 하나씩 비교를 하는 겁니다.

이래야 정상적으로 처리 되겠죠 ^^

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

답변에 대한 댓글 1개

h
hazkiryo
9년 전
앗 그렇군요 그럼 arr_wr_116필드를 따로 만들어줘야하나요?

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

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

로그인