여분필드 체크박스(checkbox) 처리방법 문의
본문
여분필드를 4개 사용중입니다.
wr_2에 대하여 아래와 같이 checkbox를 작업했는데
다른 게시판에서 이용중인 방법인데
지금 다른게시판에 아래와 같이 사용했는데 wr_2만 유독 DB에 등록이 안되네요. 이유가 뭘까요?
write.skin.php
<tr>
<th scope="row"><label for="wr_2"><i class="fa fa-tag" aria-hidden="true"></i> 분야</label></th>
<td>
<?
$wr_2_arr = array( // 기타정보 설정
"1" => "옵션1",
"2" => "옵션2",
"3" => "옵션3",
"4" => "옵션4",
"5" => "옵션5",
"6" => "옵션6",
"7" => "옵션7",
"8" => "옵션8",
"9" => "옵션9",
"10" => "옵션10",
"11" => "옵션11"
);
?>
<?
$wr_2 = explode("|", $write['wr_2']);
foreach($wr_2_arr as $key => $val) {
$chk = in_array($key, $wr_2) ? " checked" : "";
echo "<label><input type='checkbox' name='wr_2[]' value='".$key."'".$chk."> ".$val."</label> ";
}
?>
</td>
</tr>
write_update.skin.php
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
$wr_2 = implode("|", $_POST['wr_2']);
$sql = "
update $write_table
set wr_1 = '{$wr_1}',
wr_2 = '{$wr_2}',
wr_3 = '{$wr_3}',
wr_4 = '{$wr_4}'
where wr_id = '{$wr_id}' ";
sql_query($sql);
?>
답변 1
write.skin.php 파일에서 체크박스 부분 소스 보기를 하셔서 value에 값이 정상적으로 들어가 있는지 확인해 보세요.
값이 정상적이라면 write_update.skin.php 파일에서
$wr_2 = implode("|", $_POST['wr_2']);
echo $wr_2;
print_r2($_POST['wr_2']);
exit;
값이 정상적으로 찍히는지 확인해 보셔야 할 것 같네요.
답변을 작성하시기 전에 로그인 해주세요.