분류 체크박스로 변경할 때 오류,, 도와주세요 ㅠㅠ 채택완료

https://sir.kr/g4_tiptech/26035

해당 게시판 참고해서 작업중인데

1. write.skin.php 에서 분류 입력부분 수정

<tr>

    <td class=write_head>사이트 분류</td>

    <td>

<?

$arr=explode("|",$board[bo_category_list]);

foreach($arr as $str) { ?>

<input type=checkbox name=chk_ca_name[] value='<?=$str?>' ><?=$str?>

<? } ?>

<script>

var f = document.fwrite;

var str=",<?=$write[ca_name]?>,";

for (var i=0; i<f.length; i++) {

if (f.elements[i].name == "chk_ca_name[]") {

if (str.indexOf(','+f.elements[i].value+',')>=0) {

f.elements[i].checked = true;

}

}

}

</script>

</td></tr>

이부분은 해서 분류가 체크박스로 변하긴 했습니다. 체크도 되고 글도 작성ㅇ ㅣ되는데

정작 리스트나 view에서보면 분류가 선택이 안된걸로 나옵니다..ㅠㅠ..

2. write_update.head.skin.php 에서 저장부분 수정

<?

$ca_name='';

foreach($_POST[chk_ca_name] as $var) {

$ca_name.=",$var";

}

if (strlen($ca_name)) $ca_name=substr($ca_name,1);

?>

이부분은 write_update.head.skin.php에 해당 내용을 작성하면

2039043847_1652777475.5185.png

이렇게 에러가 나오는데 어디 부분에 작성해야 할까요?

답변 2개

채택된 답변
+20 포인트

bitmap방식으로 하는 것을 추천합니다.

$ca_name_set=explode("|",$view['ca_name']);

foreach($arr as $str) { ?>

<input type=checkbox name=chk_ca_name[] value='<?=$str?>'

<?=in_array( $str, $ca_name_set)?'checked':''?>

/><?=$str?>

<? } ?>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

해당 내용은 write.skin.php에 기존 분류 부분에 작성해야 하나요?
1. write.skin.php 에서 분류 입력부분
==
여기에 넣습니다.
감사합니다!

댓글을 작성하려면 로그인이 필요합니다.

Copy
수정시 체크박스 체크는 엑스엘엠님 답변대로 하고 자바스크립트는 필요없으니 완전히 제거

 

write_update.head.skin.php는 불필요한 코드가 잔뜩 입니다

아래처럼 한줄만 있으면 됩니다

<?php

$ca_name = implode(',', $_POST['chk_ca_name']);

?>
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

감사합니다!

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고