다중체크박스 체크값에 따른 멀티밸류 POST 처리방법
본문
<input type="checkbox" name="chk[]" value="chk_<?php echo $i?>" id="chk_<?php echo $i ?>">
<input type="text" name="name_<?php echo $i?>" value="철수" id="name_<?php echo $i?>">
<input type="text" age="age_<?php echo $i?>" value="25" id="age_<?php echo $i ?>">
<input type="checkbox" name="chk[]" value="chk_<?php echo $i?>" id="chk_<?php echo $i ?>">
<input type="text" name="name_<?php echo $i?>" value="영희" id="name_<?php echo $i?>">
<input type="text" age="age_<?php echo $i?>" value="20" id="age_<?php echo $i ?>">
<input type="checkbox" name="chk[]" value="chk_<?php echo $i?>" id="chk_<?php echo $i ?>">
<input type="text" name="name_<?php echo $i?>" value="길동" id="name_<?php echo $i?>">
<input type="text" age="age_<?php echo $i?>" value="27" id="age_<?php echo $i ?>">
다충체크박스를 이용해서 체크박스 값만 넘기는 것은 여러번 해보아 어렵지 않게 잘 구현해 사용하고 있습니다.
다만 위의 경우와 같이 반복문을 돌려서 회원리스트를 출력했다고 가정했을때, 두번째 체크박스를 체크해서 서비밋 시키면 체크된 행의 회원이름(영희)과 나이(25)도 동시에 넘겨주려면 어떻게 스크립트를 구성해야 할지요?
처음부터 checkbox 밸류값에다 | 같은 구분자를 이용해서 회원이름과 나이를 모두 담아주면 간단하겠지만, 사정상 그렇게 사용하지 못하는 이유(check밸류값이 가변적으로 변함)가 있습니다.
!-->
답변 2
<input type="checkbox" name="chk[]" value="chk_<?php echo $i?>" id="chk_<?php echo $i ?>">
<input type="text" name="name[<?php echo $i?>]" value="철수" id="name_<?php echo $i?>">
<input type="text" age="age[<?php echo $i?>]" value="25" id="age_<?php echo $i ?>">
for ($i = 0; $i < $chk; $i++) {
$k = $k = $_POST['chk'][$i];
$name_val = $_POST['name'][$k];
}
=> 이렇게 하시면 값을 받으실수 있을겁니다.
=> 그누보드 보시면 /adm/member_list_update.php 에서 비슷하게 사용할겁니다.
for($i=0;$i<sizeof($chk);$i++){
$tmp = explode("_",$chk[$i]);
$name[] = $name_.$tmp[1];
$age[] = $age_.$tmp[1];
}
코드가 영 잡스럽지만... ㅠ
이렇게도 쓸 수 있지 않을까 합니다.
!-->
답변을 작성하시기 전에 로그인 해주세요.