회원가입 여분필드에 배열 사용하는 방법
본문
회원가입시 "기존 수강항목 선택" 이라는 항목이 있습니다.
mb_10 필드를 사용해서, 체크박스 다중선택 배열 형태로 사용하려고 합니다.
회원가입 스킨 입력란에서
<?php
$mb10 = explode("|", $member['mb_10']);
?>
<input type="checkbox" name="mb10[0]" value="class1" <?php echo ($mb10[0] == "class1") ? "checked" : "";?>> class1
<input type="checkbox" name="mb10[1]" value="class2" <?php echo ($mb10[1] == "class2") ? "checked" : "";?>> class2
<input type="checkbox" name="mb10[2]" value="class3" <?php echo ($mb10[2] == "class3") ? "checked" : "";?>> class3
<input type="checkbox" name="mb10[3]" value="class2" <?php echo ($mb10[3] == "class4") ? "checked" : "";?>> class4
이렇게 적용했습니다.
입력을 해도 체크박스가 그대로 공란으로 표시가 되는데요.
관리자페이지에서 [회원정보 상세페이지]와 회원로그인시 [정보수정] 페이지에서
위의 내용을 불러오려면 어떻게 해야 할까요?
답변 2
※ https://eond.com/gnuboard/435215
<?php
$mb10 = explode("|", $member['mb_10']);
?>
<input type="checkbox" name="mb10[]" value="class1" <?php echo in_array('class1', $mb10) ? "checked" : "";?>> class1
<input type="checkbox" name="mb10[]" value="class2" <?php echo in_array('class2', $mb10) ? "checked" : "";?>> class2
<input type="checkbox" name="mb10[]" value="class3" <?php echo in_array('class3', $mb10) ? "checked" : "";?>> class3
<input type="checkbox" name="mb10[]" value="class2" <?php echo in_array('class4', $mb10) ? "checked" : "";?>> class4
체크하실때 배열값에 순서대로 들어가면 괜찮지만 그렇지 않을때는 빈값이 들어가있기에 순서가 등록시 | 구분해서 등록되었는지 보시고 배열값을 확인해 보시고
문제 없다면 in_array함수로 해서 check되도록 처리하시면 될겁니다.