checkbox 배열 넘기고 받는데 문제가 있습니다.

checkbox 배열 넘기고 받는데 문제가 있습니다.

QA

checkbox 배열 넘기고 받는데 문제가 있습니다.

본문


<input type="checkbox" id="icon_skeyndor" name="wr_4[]" value="icon_skeyndor" >
<label for="icon_skeyndor"><img src="http://www.cledbel.co.kr/img/icon_skeyndor.png" border="0"> </label>
<input type="checkbox" id="icon_liftingPack" name="wr_4[]" value="icon_liftingPack" >
<label for="icon_liftingPack"><img src="http://www.cledbel.co.kr/img/icon_liftingPack.png" border="0"> </label>
<input type="checkbox" id="icon_cushion" name="wr_4[]" value="icon_cushion" >
<label for="icon_cushion"><img src="http://www.cledbel.co.kr/img/icon_cushion.png" border="0"> </label>
<input type="checkbox" id="icon_ns" name="wr_4[]" value="icon_ns" >
<label for="icon_ns"><img src="http://www.cledbel.co.kr/img/icon_ns.png" border="0"> </label>
<input type="checkbox" id="icon_gs" name="wr_4[]" value="icon_gs" >
<label for="icon_gs"><img src="http://www.cledbel.co.kr/img/icon_gs.png" border="0"> </label>
<input type="checkbox" id="icon_l" name="wr_4[]" value="icon_l" >
<label for="icon_l"><img src="http://www.cledbel.co.kr/img/icon_l.png" border="0"> </label>
<input type="checkbox" id="icon_a" name="wr_4[]" value="icon_a" >
<label for="icon_a"><img src="http://www.cledbel.co.kr/img/icon_a.png" border="0"> </label>
<input type="checkbox" id="icon_h" name="wr_4[]" value="icon_h" >
<label for="icon_h"><img src="http://www.cledbel.co.kr/img/icon_h.png" border="0"> </label>
<input type="checkbox" id="icon_etc" name="wr_4[]" value="icon_etc" >
<label for="icon_etc"><img src="http://www.cledbel.co.kr/img/icon_etc.png" border="0"> </label>

 

위 checkbox들을 배열로 넘겨서 받는부분에서


for($i=0; $i<sizeof($_POST['wr_4']); $i++){
        if($i==0){
            $wr_4_arr = $_POST['wr_4'][$i];
        }else{
            $wr_4_arr .= ",".$_POST['wr_4'][$i];
        }
    }
    echo sizeof($_POST['wr_4'])."<br>";
    echo $wr_4_arr;
    exit;

 

찍어보면 sizeof는 1이 찍히고 $wr_4_arr는 A가 찍히고 있습니다

Array의 A같은데 왜 value들이 안찍히고 저게 찍히는걸까요?

이 질문에 댓글 쓰기 :

답변 4

일단 해당소스로 테스트해본 결과 소스상에 오류는 없습니다.

 

1. 등록폼에서 소스보기로 html 확인해보세요 

  form 이 정상적으로 열리고 닫혀있는지를요.

  간혹 form이 비정상적으로 되어있을때 이런 현상이 나타나기도 합니다.

 

2. 등록폼에서 wr_4 값이 다른곳에 씌인게 있는지 확인요망.

print_r2($_POST['wr_4']);

 

나 혹은

 

var_dump($_POST['wr_4']);

 

한번 해보세요.

var_dump($_POST);

먼저 해보시는게 좋을듯 합니다.

 

혹시나 넘기는 부분이 잘못된건가요?


<?php
$subj_icon = array('skeyndor', 'liftingPack', 'cushion' , 'ns' , 'gs' , 'l' , 'a' , 'h' , 'etc');
for ($x=0 ; $x < count($subj_icon) ; $x++) {
?>
&nbsp; &nbsp; <input type="checkbox" id="<?php echo 'icon_'.$subj_icon[$x]; ?>" name="wr_4[]" value="<?php echo 'icon_'.$subj_icon[$x]; ?>" <?php if($write['wr_4'] == "icon_".$subj_icon[$x]) echo " checked"; ?>>
<label for="<?php echo 'icon_'.$subj_icon[$x]; ?>"><img src="<?php echo(G5_IMG_URL.'/icon_'.$subj_icon[$x].'.png'); ?>" border="0"> </label>
<?php
}
?>

이렇게 넘기고 있습니다.

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

회원로그인

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