체크박스의 값을 php로 전달받아서 조건문구현
본문
<input type="checkbox" name="modifyChk[]" value="a" / >
<input type="checkbox" name="modifyChk[]" value="1" / >
<input type="checkbox" name="modifyChk[]" value="2" / >
로값을전달받아
php 부분에
for($i=0; $i<count($_POST['modifyChk']); $i++){
$position = $_POST['modifyChk'];
echo $position[i];
}
값을받아서
if(postion[i] ==0){
출력
}
이런식으로 구현하려고하는데..되질않습니다전문가분의 도움이필요합니다.
답변 3
무얼 그리 여러번 나누어서 하나요
아래처럼 하세요
for($i=0; $i<count($_POST['modifyChk']); $i++){
echo $_POST['modifyChk'][$i];
}
안되는 이유
for($i=0; $i<count($_POST['modifyChk']); $i++){
$position = $_POST['modifyChk']; <---이렇게 하는게 아닙니다. 넘어온 전체 체크값이 들어갑니다. 아래처럼 합니다
$position = $_POST['modifyChk'][$i];
echo $position;
echo $position[i];<---이건 필요 없고 또한 인수를 잘못 넣었습니다
}
$position = new array(); 추가
$position = $_POST['modifyChk']; 이부분을
array_push($position, $_POST['modifyChk'][$i]);
이렇게 수정하시면 될것 같습니다.
!-->
일단 몇가지 알려 드리겠습니다 modifyChk값을 for 문 안에서 받아 오는 부분이 문제가 되구요 체크박스 값이다 보니 전달 받지 않을 수도 있습니다. 그래서 값이 왔는지 조건 문도 필요 할 것 같습니다.
if(isset($_POST['modifyChk'])) {
$position = $_POST['modifyChk'];
for ($i = 0; $i < count($position); $i++) {
if($position[$i] == 1){
echo $position[$i];
}
}
}
이런 식으로 수정 하시면 값이 왔는지 체크 한후 해당 배열에값이 0인지 비교 할 수 있을것 같습니다.
!-->