회원여분필드mb_6에 체크박스 만들고 있습니다.
아래와 같이 해보니 다중선택해도 하나의 값만 저장이되서
<input type="checkbox" name="mb_6" value="사과" <?php echo ($member['mb_6'] == "사과") ? "checked" : "";?>> 사과
<input type="checkbox" name="mb_6" value="수박" <?php echo ($member['mb_6'] == "수박") ? "checked" : "";?>> 수박
<input type="checkbox" name="mb_6" value="참외" <?php echo ($member['mb_6'] == "참외") ? "checked" : "";?>> 참외
다중처리를 위해 아래와 같이 했습니다.
희한하게 맞는거 같은데 안되서요.
소스한번 봐주세요.
register_form.skin.php
<?php
$mb6 = explode("|", $member['mb_6']);
?>
<input type="checkbox" name="mb6[0]" value="사과" <?php echo ($mb6[0] == "사과") ? "checked" : "";?>> 사과
<input type="checkbox" name="mb6[1]" value="수박" <?php echo ($mb6[1] == "수박") ? "checked" : "";?>> 수박
<input type="checkbox" name="mb6[2]" value="참외" <?php echo ($mb6[2] == "참외") ? "checked" : "";?>> 참외
register_form_update.tail.skin.php
$mb_6 = "$mb6[0]|$mb6[1]|$mb6[2]";
답변 3개 / 댓글 3개
register_form_update.tail.skin.php 파일에서
$mb_6 = "$mb6[0]|$mb6[1]|$mb6[2]"; 를 db에 해당 mb_6 필드에 업데이트를 해줘야 합니다.
$sql = " update $g5['member_table'] set mb_6 = '{$mb_6}' where mb_id = '$mb_id' ";
sql_query($sql);
답변에 대한 댓글 1개
저렇게 하면 제대로 저장되도 수정시에 체크가 안되있을텐데요?
사과, 참외, 수박 순서인데
사과를 체크하지않고 참외, 수박만 체크를 한다고 가정해본다면
해당 회원이 수정시에
체크박스에는 <?php echo ($ex_6[0] == "사과") ? "checked" : "";?>
이부분이 말이안됩니다
왜냐?
$ex_6[0]에는 참외부터 들어가기 때문입니다.
코드자체가 문제가있어요
참고해보세요
답변에 대한 댓글 1개
님이 올려놓으신 팁도 예전에 봤습니다.감사합니다.
register_form_update.tail.skin.php
의
$mb_6 = $mb6[0]."|".$mb6[1]."|".$mb6[2];
이렇게 해보세요~
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
<?php
$ex_6 = explode("|", $member['mb_6']);
?>
<span><input type="checkbox" name="ex6_00" value="사과" <?php echo ($ex_6[0] == "사과") ? "checked" : "";?>> 사과</span>
<span><input type="checkbox" name="ex6_01" value="수박" <?php echo ($ex_6[1] == "수박") ? "checked" : "";?>> 수박</span>
<span><input type="checkbox" name="ex6_02" value="참외" <?php echo ($ex_6[2] == "참외") ? "checked" : "";?>> 참외</span>
$mb_6 = "$ex6_00|$ex6_01|$ex6_02|$ex6_03";
$sql = " update {$g5['member_table']} set mb_6 = '{$mb_6}' where mb_id = '{$mb_id}' ";
sql_query($sql);