채택완료
체크박스 체크 후 수정 시 체크값 유지가 안되요...ㅠ
아래처럼 해당 게시판 write.php 에 체크박스 만든 후 체크 시 해당 하는 값이 저장은 되는데
수정 시 체크했던 체크박스가 유지가 안되고 체크했던게 초기화되서 수정할때마다 다시 체크를 해줘야 하는 문제가 생기네요. 복수선택을 하든 하나만 선택을 하든 수정 시엔 다시 체크를 해줘야하는데
검색해서 여러 방법을 다 시도해봤는데 체크 유지가 안되네요 ... 어떻게 해야 체크 박스 체크가 유지 될까요? ㅠㅠ 고수님들 제발 도와주세요 ㅠㅠ
Copy
<tr>
<th><label for="wr_content">노출페이지<strong class="sound_only">필수</strong></label></th>
<td class="w_bo_w">
<div style="display:flex; flex-wrap:wrap; align-items: flex-start; justify-content: flex-start;">
<?php
for($i=0;$row=sql_fetch_array($qry);$i++){
$checked = '';
for($j=0;$j<count($wr_5);$j++) {
if($wr_5[$j]==$row['me_code']) $checked = 1;
}
?>
<label><input type="checkbox" name="ch_wr_5[]" value="<?=$row['me_code']?>" <? echo $checked==1?'checked="checked"':'';?> ><?=$row['me_name']?></label>
<? } ?>
</div>
</td>
</tr>
뷴류는 , 로 분류하도록 했습니다.
Copy
$wr_5 = explode(',', $row['ch_wr_5']);
답변 6개 / 댓글 4개
채택된 답변
+20 포인트
jquery 방식으로 하는부분으 더 효율적일듯하여 제가 다시한번 코딩해보았습니다.
참고하여 적용해보시기 바랍니다.
Copy
<tr>
<th><label for="wr_content">노출페이지<strong class="sound_only">필수</strong></label></th>
<td class="w_bo_w">
<div style="display:flex; flex-wrap:wrap; align-items: flex-start; justify-content: flex-start;">
<?php
for($i=0;$row=sql_fetch_array($qry);$i++){
?>
<label><input type="checkbox" name="ch_wr_5[]" id="ch_wr_5_<?=$i?>" value="<?=$row['me_code']?>" <? echo $checked==1?'checked="checked"':'';?> ><?=$row['me_name']?></label>
<? } ?>
</div>
</td>
</tr>
<script>
<?php
for($j=0;$j<count($wr_5);$j++) {
?>
$("input:checkbox[id='Ich_wr_5_<?=$i?>']").is(":checked") == true
<?php
}
?>
</script>
해보시다 안되시면 쪽지주시면 도움드리겠습니다.
Copy
for($i=0;$row=sql_fetch_array($qry);$i++){
$wr_5 = explode(',', $row['ch_wr_5']);
print_r($wr_5);
echo $row["me_code"];
이걸로 해당 값들이 잘 나오는지 우선 확인해보셔야 할 듯 해요
아니면 지금 내용이 저 위 코드 상단으로 또 다른 for 혹은 while문이 존재할 경우
$row["me_code"] 값이 상단 루프적용된 값인데 중간에 한번 더 $row를 정의해서 값이 사라졌을 지도 모르겠네요
답변을 작성하려면 로그인이 필요합니다.