배열 explode 했다가 다시 join 할때요.. 채택완료
케빈스
4년 전
조회 1,834
</p>
<p>$mama5 = $_POST['mmb_5']; // ===> 0|0|0|0|0 ....이런 형태임.
$ma55 = explode('|', $mama5); // ===> 쪼갠뒤에..
for($i=0; $i<=14; $i++){
$k = isset($_POST['mbgo'][$i]) ? $_POST['mbgo'][$i] : 0;
if($k){
$ma55[$k] = 1; // ===> 체크된 것만 0|1|0|0|0 ....업데이트 하려고함.
$ma55 = join('|', $ma55); // ===> 근데, 여기서 다시 묶이지가 않음.
}
}</p>
<p>
안녕하세요. 질문 하나 드릴까 합니다.
위에 POST 로 넘어온 것은 체크박스 입니다.
체크된 것을 확인해서 업데이트 하려고 하는데요...
기본값 : 0|0|0|0|0 ....이런 형태로 디비에 값이 있습니다.
체크된값이 위처럼 넘어오면 $K 에 체크된 리스트번호가 확인되어서..
기본값을 바꾸려고 하는건데요..
join 에서 에러가 나오는데..이유를 잘 모르겠습니다.
$k = isset($_POST['mbgo'][$i]) ? $_POST['mbgo'][$i] : 0; <=== 이부분 마지막을 '0' 으로 해주면
join 에러는 안나는데..체크박스를 정확히 체크할수는 없더라구요
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
4년 전
</p>
<p>$mama5 = $_POST['mmb_5']; // ===> 0|0|0|0|0 ....이런 형태임.
$ma55 = explode('|', $mama5); // ===> 쪼갠뒤에..
for($i=0; $i<sizeof($ma55); $i++){
$k = isset($_POST['mbgo'][$i]) ? $_POST['mbgo'][$i] : 0;
if($k){
$ma55[$k] = 1; // ===> 체크된 것만 0|1|0|0|0 ....업데이트 하려고함..
}
}</p>
<p>$mama5 = implode('|',$ma55);</p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 3개
�
케빈스
4년 전
e
eyekiss
4년 전
if($k){
$ma55[$k] = 1; // ===> 체크된 것만 0|1|0|0|0 ....업데이트 하려고함..
} else {
$ma55[$k] = 0;
}
$ma55[$k] = 1; // ===> 체크된 것만 0|1|0|0|0 ....업데이트 하려고함..
} else {
$ma55[$k] = 0;
}
�
엑스엠엘
4년 전
for($i=0; $i<sizeof($ma55); $i++){
$ma55의 크기로 loop를 돌리는 것이 아니라
html checkbox 갯수로 돌려야 합니다.
$ma55의 크기로 loop를 돌리는 것이 아니라
html checkbox 갯수로 돌려야 합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
바로 테스트를 해봤습니다.
적용은 되는데...기존에 체크되어 있던 것은...체크 해제를 해도..
이거는 먹히지가 않네요..
혹시 제가 잘못 작성한게 있을까요?
$mm5 = explode('|', $member['mb_5']);
<input type="checkbox" name="mbgo[]" value="<?php echo $i ?>" <?php echo $mm5[$i]?'checked':''; ?> id="mbgo_<?php echo $i ?>">