안녕하세요 제발 부탁드립니다 chechkbox 배열 db 저장방법입니다ㅠㅠ
본문
write.skin.php에
<input type="checkbox" name="wr_10[]" value="1" class="frm_input" > ㄱㄱ
<input type="checkbox" name="wr_10[]" value="2" class="frm_input" >ㄴㄴ
<input type="checkbox" name="wr_10[]" value="3" class="frm_input" >ㄷㄷ
<input type="checkbox" name="wr_10[]" value="4" class="frm_input" >ㄹㄹ
로 체크박스를 만들고
write_update.skin.php 엔
$wr_10=implode(",", $_POST['wr_10']);
sql_query("UPDATE ".$write_table." SET wr_10 = '".$wr_10."' WHERE wr_id = ".$wr_id);
이렇게 줬는데요 db에 저장이안됩니다ㅠㅠ 제발 도움좀주세요
저장이된후에는 list.skin.php 에
값이 이 있으면 " O " 이렇게 표현하고싶은데 그것도 알려주시면 대단히감사하겠습니다ㅠㅠ
형님들 도와주십쇼행님들
답변 3
일단 개발자 도구로 wr_10 POST 값으로 제대로 넘어갔는지 부터 확인하시는게 순서겠네요
배열만 제대로 넘어갔으면 별 문제 없을거 같은데요?
php에서 체크박스의 name이 같은경우,
결과값(wr_10)을 배열로 인지하기때문에, array가 나올수 밖에 없지요.
값을 확인하려면,
echo print_r($_POST['wr_10']);
형식으로 해야, 보입니다.
1번과 2번을 선택한 경우, print_r 해보면,
Array ( [0] => 1 [1] => 2 )
이렇게 출력될 것이구요.
체크박스의 수량이 많지 않다면,
name 값을 달리하는게 간단할 것 같군요.
db에 저장이 되었다고 할 경우,
list에서 "O"을 출력하는 부분은
해당 스킨 출력부분에,
if($list[$i]['wr_10'] <>"") echo "O";
이렇게 처리하면 될 듯..
write.skin.php 파일에서
<input type="hidden" name="wr_id" value="<?php echo $wr_id ?>">
위 부분 추가해서 넘겨주시고
write_update.php
<?php
$wr_10=implode(",", $_POST['wr_10']);
sql_query("UPDATE {$write_table} SET wr_10 = '{$wr_10}' WHERE wr_id = '{$wr_id}'");
?>
이렇게 해주시면 될 것 같습니다