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

체크박스 기본값 적용 채택완료

켠켠 4년 전 조회 1,973

체크박스가 기본값이 체크가 되어있고 (기본값은 mb_7 값이 없을 때) 체크를 해제할 경우 mb_7 에 "1" 이라는 값을 저장시키려고 하는데요..

 <input type="checkbox" name="mb_7" value="1"<?php echo ($member['mb_7'] == "") ? "checked" : "";?>>

이렇게 하면 기본값이 체크긴 한데 정보수정을 할때마다 매번 체크여부에 관계없이 현재상태랑 반대로 저장이 돼서.. ( 체크가 되어있으면 안한거로 저장되고 체크를 안되어있으면 한거로 저장되게 )

잘못되어 있는거는 알겠는데 어떻게 수정을 해야할지 모르겠어서.. 고민하다가 올리게 되었습니다.

기본값(체크)일 경우에는 mb_7 값을 "" 으로 하고 체크를 해제할 경우에는 mb_7 값을 "1" 로 되게 하고싶어요

 

어떻게 해야할까요..? 초보라서 다른 글들을 봐도 이해를 못하겠어요.. 고수님들 설명좀 해주세요 ㅠㅠ

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

답변 1개

채택된 답변
+20 포인트

말씀하신것처럼 하려면 복잡하므로

 

mb_7 이 체크되어있을때 1을 저장하고

체크안되어있으면 "" 이 저장되도록 하셔야 합니다

 

</p>

<pre>
<code> <input type="checkbox" name="mb_7" value="1"<?php echo ($member['mb_7'] == "1" ) ? "checked" : "";?>> </code>
</pre>

<p>

위처럼 하시면

회원의 mb_7 이 1 일때 체크 , 아니면 체크 안되게 됩니다.

기본 값은 무조건 체크되어있게 하려면 

조건을 추가하셔야 하는데 저게 게시판 글쓰기에 들어가는 것인지

회원 정보 수정에 들어가는 것인지를 모르겠으나

 

회원정보 수정 쪽에 들어간다고 가정하고 말씀드리면

</p>

<p><code><input type="checkbox" name="mb_7" value="1"<?php echo ($member['mb_7'] == "1" || $w=="") ? "checked" : "";?>> </code></p>

<p>

로 조건을 추가하시면

mb_7 값이 1이거나 w 가 빈값일때 (즉 회원 가입 일때) 체크박스가 되게 됩니다

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

답변에 대한 댓글 1개

켠켠
4년 전
답변 감사합니다. 체크를 하면 빈값, 체크를 하지 않으면 1로 되게는 복잡하군요.. 알려주셔서 감사합니다!

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

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

로그인