Warning: Undefined array key "mobile_dir" in /home/kagla/new-sir/old/common.php on line 315
for문 으로 돌린 체크박스 수정화면에서 풀림 문제

for문 으로 돌린 체크박스 수정화면에서 풀림 문제

for문 으로 돌린 체크박스 수정화면에서 풀림 문제

QA

for문 으로 돌린 체크박스 수정화면에서 풀림 문제

답변 1

본문

지금 write.skin에서는

 

<?  for ($j=0; $j<count($arr); $j++) {  ?>
        input type="checkbox" name="wr_50[]" value="<?= $arr[$j] ?>"> <?= $arr[$j] ?>
<?  } ?>

 

이렇게 for문으로 배열에서 받은 데이터를 뿌려주고있습니다. 

배열로 뿌리는 이유는 게시물마다 주차가 다 다릅니다.

예를들어 데이터가 4주|6주|7주 이런식으로 구분자포함해서 wr_30컬럼에 주차가 들어가있고

이 데이터를 explode로 배열 처리후 체크박스로  ㅁ4주   ㅁ6주   ㅁ7주  이렇게 나오게 위에 코드처럼 for문을 돌렸는데

업데이트나 인서트는 정상적으로 들어갑니다 

 

인서트할때는 체크된 항목이  |구분자를 넣어서 4주|6주 이렇게 wr_50컬럼으로 들어갑니다.

 

근데 수정화면에서는  checked 처리를 어떻게 해야할지 몰라서 풀려있는 화면만 나오는데

<?php echo ($write['wr_50'] == '여기에 어떻게 처리를 해야할지') ? " checked" : "";?>

제가 초보라 잘 모르겠네요

 

고수님들 부탁드립니다

이 질문에 댓글 쓰기 :

답변 1

$write['wr_50']는 그럼 문자열이니 다시 배열화 해서 비교하시면 더 쉽게 가능합니다

 

//배열화

$wr_50 = explode('|', $write['wr_50']);

 

//해당 input의 값이 배열에 포함되는지 검사(in_array)

<?php echo (in_array($arr[$j], $wr_50)) ? " checked" : "";?>

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 129,406
© SIRSOFT
현재 페이지 제일 처음으로