체크박스 수정시 해제안되게 하는 방법
본문
게시판 글 수정시 체크박스 체크된 부분 해제안되게 할려면 어찌하면 되나요..
소스는 아래와 같이 사용하고 있습니다.
<input type="checkbox" name="wr10[0]" value="내용1" <?php echo ($wr10[0] == "1") ? "checked" : "";?>> 내용1
<input type="checkbox" name="wr10[1]" value="내용2" <?php echo ($wr10[1] == "2") ? "checked" : "";?>> 내용2
<input type="checkbox" name="wr10[2]" value="내용3" <?php echo ($wr10[2] == "3") ? "checked" : "";?>> 내용3
<input type="checkbox" name="wr10[3]" value="내용4" <?php echo ($wr10[3] == "4") ? "checked" : "";?>> 내용4
<input type="checkbox" name="wr10[4]" value="내용5" <?php echo ($wr10[4] == "5") ? "checked" : "";?>> 내용5
답변 5
저장을 어떻게 하고 있는지 남이 알아볼 수 있게 설명을 해야 답변을 할 수 있을텐데요
체크박스 value가 내용1, 내용2~~~ 인데 $wr[0]==1 ? 이렇게 하는 것이 이상하네요
write_update.head.skin.php화일에서 다음처럼 코딩해서 저장하고
$wr_10=$wr10[0].'|'.$wr10[1].'|'.$wr10[2].'|'.$wr10[3].'|'.$wr10[4].'|'.$wr10[5];
write.skin.php에서 다음처럼 하세요
$wr10 = explode('|', $write['wr_10']);
for($i=0; $i<5; $i++) $wrchk[$i] = $wr10[$i] ? 'checked' : '';
==============
<input type="checkbox" name="wr10[0]" value="내용1" <?php echo $wrchk[0];?>> 내용1
<input type="checkbox" name="wr10[1]" value="내용2" <?php echo $wrchk[1];?>> 내용2
<input type="checkbox" name="wr10[2]" value="내용3" <?php echo $wrchk[2];?>> 내용3
<input type="checkbox" name="wr10[3]" value="내용4" <?php echo $wrchk[3];?>> 내용4
<input type="checkbox" name="wr10[4]" value="내용5" <?php echo $wrchk[4];?>> 내용5
차라리 체크박스 보다는 radio 박스로 처리하시는건 어떠실까 여쭈어 봅니다.
아니면 체크된 부분뒤에 disabled 처리를 해서 처리하는 방법도 있습니다.
$(function(){
$("input[type='checkbox']").click(function(){
return false;
});
});
<input type="checkbox" name="wr10[0]" value="내용1" <?php echo ($wr10[0] == "1") ? "disabled checked" : "";?>>
이런식으로 disabled을 함께 사용하시되 disabled로 막아도 변조가 가능하기 때문에 업데이트 시키실 때 이전 값으로 불러와서 넣어야 해요
!-->전 보통 이렇게 합니다.
<input value="1" <?php echo ($write['wr_10']&1 ) ? "checked" : "";?>> 내용1
<input value="2" <?php echo ($write['wr_10']&2) ? "checked" : "";?>> 내용2
<input value="4" <?php echo ($write['wr1_0']&4 ) ? "checked" : "";?>> 내용3
write_update.php(또는 스킨 등에서)
$wr_10= array_sum( $_POST['wr_10']);
로 하고 DB에 저장합니다.