다중 체크값 저장한거 체크박스에 불러오기

다중 체크값 저장한거 체크박스에 불러오기

QA

다중 체크값 저장한거 체크박스에 불러오기

본문


<input type="checkbox" name="mb_9[]" value="a" id="mb_9_0" <?php if($mb_9[0] == 'a') echo 'checked="checked"'; ?>>
<label for="mb_9_0">판매1</label>
<input type="checkbox" name="mb_9[]" value="b" id="mb_9_1" <?php if($mb_9[1] == 'b') echo 'checked="checked"'; ?>>
<label for="mb_9_1">판매2</label>
<input type="checkbox" name="mb_9[]" value="c" id="mb_9_2" <?php if($mb_9[2] == 'c') echo 'checked="checked"'; ?>>
<label for="mb_9_2">판매3</label>

 

이런 소스가 있다고 할 때

 

업데이트 쪽에는 $mb_9 = implode(',', $_POST['mb_9']);

이런식으로 해서 DB에 a,b,c 이런식으로 저장되게 해놨습니다.

실제로 저장도 a,b 또는 a,c 이런식으로 저장이 잘 됩니다.

 

문제는 그 체크한 값을 불러오는건데요

<?php $mb_9 = explode(',', $mb['mb_9']); ?>

를 하여 불러오면

순서대로 a,b 일 경우엔 체크가 a,b 체크가 다 되어 있지만

a,c 일 경우엔 a만 체크가 됩니다.

 

어떻게 변경해야 제대로 나오게 될까요?

이 질문에 댓글 쓰기 :

답변 1

아래처럼 각각 바꿔보세요



<?php if(in_array('a',$mb_9) echo 'checked="checked"'; ?>
<?php if(in_array('b',$mb_9) echo 'checked="checked"'; ?>
<?php if(in_array('c',$mb_9) echo 'checked="checked"'; ?>

답변을 작성하시기 전에 로그인 해주세요.
전체 17,074
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT