BOARD

강좌·기초

그누보드 관리자 회원 수정 페이지 여분 필드(mb1~mb10) 입력 폼 추가 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 22회 작성일 26-09-26 15:15

본문

그누보드 관리자 회원 수정 페이지 여분 필드(mb1~mb10) 입력 폼 추가 방법

그누보드 운영자·개발자가 회원가입 스킨에 추가한 여분 필드를 관리자 회원 수정 페이지에서도 동일하게 출력하고 수정할 수 있도록 연동하는 방법을 알아봅니다.

관리자 페이지 회원 수정 화면에 여분 필드 추가하기

그누보드5 회원가입 스킨에서 mb_1부터 mb_10까지의 여분 필드를 추가한 후, 관리자 회원 수정 페이지에서도 동일하게 출력하고 수정할 수 있도록 하려면 /adm/member_form.php 파일을 수정해야 합니다.

1. 수정 파일 위치

  • 경로: /adm/member_form.php

2. 입력 폼 코드 추가 방법

회원가입 스킨에서 작성한 입력 폼 코드를 그대로 가져오되, 변수명을 수정해야 합니다. 가입 스킨에서 사용하던 $member['mb_1'] 형태의 변수는 관리자 페이지에서 $mb['mb_1'] 형태로 변경하여 원하는 위치에 추가합니다.

예시 코드:

<tr>
 <th scope="row"><label for="mb_1">사업자번호</label></th>
 <td colspan="3"><input type="text" name="mb_1" value="<?php echo $mb['mb_1']?>" id="mb_1" class="frm_input" size="20"></td>
</tr>
<tr>
 <th scope="row"><label for="mb_2">취급품목</label></th>
 <td colspan="3"><textarea name="mb_2" id="mb_2" rows="5"><?php echo $mb['mb_2']?></textarea></td>
</tr>
<tr>
 <th scope="row"><label for="mb_3">업체구분</label></th>
 <td colspan="3">
 <select name="mb_3" id="mb_3">
 <option value="">선택하세요.</option>
 <option value="개인회원"<?php echo ($mb['mb_3'] == "개인회원")? " selected": "";?>>개인회원</option>
 <option value="기업회원"<?php echo ($mb['mb_3'] == "기업회원")? " selected": "";?>>기업회원</option>
 </select>
 </td>
</tr>
<tr>
 <th scope="row"><label for="mb_4">기간선택</label></th>
 <td colspan="3">
 <input type="radio" name="mb_4" value="1년"<?php echo ($mb['mb_4'] == "1년")? " checked": "";?>> 1년
 <input type="radio" name="mb_4" value="2년"<?php echo ($mb['mb_4'] == "2년")? " checked": "";?>> 2년
 <input type="radio" name="mb_4" value="3년"<?php echo ($mb['mb_4'] == "3년")? " checked": "";?>> 3년
 <input type="radio" name="mb_4" value="4년"<?php echo ($mb['mb_4'] == "4년")? " checked": "";?>> 4년
 </td>
</tr>
<tr>
 <th scope="row"><label for="mb_5">해외사업자</label></th>
 <td colspan="3"><input type="checkbox" name="mb_5" value="해외사업자"<?php echo ($mb['mb_5'] == "해외사업자")? " checked": "";?>> 해외사업자</td>
</tr>

3. 여분 필드 반복문(for문) 범위 조정

파일 하단에 기본으로 존재하는 여분 필드 출력 반복문 범위도 사용한 개수만큼 제외하도록 수정해야 합니다. 예를 들어 mb_1부터 mb_5까지 위와 같이 개별 폼으로 직접 출력했다면, 하단의 기본 반복문은 6번부터 출력되도록 범위를 조정합니다.

  • 수정 전: <?php for ($i=1; $i<=10; $i++) {?>
  • 수정 후: <?php for ($i=6; $i<=10; $i++) {?>

만약 여분 필드를 띄엄띄엄 사용했거나 개별적으로 처리하고 싶다면 continue 조건문을 추가하거나 해당 출력 코드 블록 전체를 삭제하고 필요한 번호만 개별 추출하여 사용할 수 있습니다.

관리자 회원 수정 페이지 커스텀 입력 폼 작성 방법

그누보드 관리자 회원 수정 페이지(/adm/member_form.php)에서 셀렉트 박스나 라디오 버튼 같은 커스텀 입력 폼을 작성할 때는 가입 페이지 스킨에서 사용한 형태와 동일한 HTML 코드를 넣되, 변수명을 $member에서 $mb로 변경해야 합니다.

수정 방법 및 코드 예시

/adm/member_form.php 파일의 원하는 위치에 아래 예시처럼 코드를 추가합니다.

<tr>
 <th scope="row"><label for="mb_3">업체구분</label></th>
 <td colspan="3">
 <select name="mb_3" id="mb_3">
 <option value="">선택하세요.</option>
 <option value="개인회원"<?php echo ($mb['mb_3'] == "개인회원")? " selected": "";?>>개인회원</option>
 <option value="기업회원"<?php echo ($mb['mb_3'] == "기업회원")? " selected": "";?>>기업회원</option>
 </select>
 </td>
</tr>
<tr>
 <th scope="row"><label for="mb_4">기간선택</label></th>
 <td colspan="3">
 <input type="radio" name="mb_4" value="1년"<?php echo ($mb['mb_4'] == "1년")? " checked": "";?>> 1년
 <input type="radio" name="mb_4" value="2년"<?php echo ($mb['mb_4'] == "2년")? " checked": "";?>> 2년
 <input type="radio" name="mb_4" value="3년"<?php echo ($mb['mb_4'] == "3년")? " checked": "";?>> 3년
 <input type="radio" name="mb_4" value="4년"<?php echo ($mb['mb_4'] == "4년")? " checked": "";?>> 4년
 </td>
</tr>

주의 사항

  • 가입 페이지 스킨에서 사용하던 $member['mb_3'] 등의 변수명은 관리자 수정 페이지에서 $mb['mb_3'] 형태로 변경해야 정상적으로 값이 연동됩니다.
  • 코드를 수정하기 전 대상 파일인 /adm/member_form.php를 반드시 백업한 후 진행하세요.

관리자 페이지 여분 필드 반복문(for문) 범위 조정 방법

그누보드 관리자 페이지의 회원 수정 파일(/adm/member_form.php) 상단에 여분 필드를 개별 입력 폼으로 직접 추가한 경우, 하단에 기본으로 출력되는 여분 필드 반복문(for문)의 범위를 조정해야 중복 출력을 방지하고 번호 꼬임 오류를 막을 수 있습니다.

1. 순서대로 여분 필드를 사용한 경우

상단에서 사용한 여분 필드 개수만큼 하단 반복문의 시작 번호를 조정해야 합니다. 예를 들어 여분 필드 mb_1부터 mb_5까지 총 5개를 사용했다면, 하단 기본 출력 코드에서 아래와 같이 시작 범위를 변경합니다.

  • 수정 전:
<?php for ($i=1; $i<=10; $i++) {?>
  • 수정 후 (mb_1부터 mb_5까지 5개를 사용했으므로 6번부터 출력되도록 조정):
<?php for ($i=6; $i<=10; $i++) {?>

2. 여분 필드를 띄엄띄엄 사용한 경우

필드를 연속되지 않게 띄엄띄엄 사용한 경우(예: mb_4, mb_5, mb_8번을 사용한 경우)에는 continue 조건을 추가하여 특정 번호가 반복문에서 출력되지 않도록 제외할 수 있습니다.

<?php for ($i=1; $i<=10; $i++) { 
 if($i == 4 || $i == 5 || $i == 8) continue;
?>

3. 전체 기본 출력 코드를 삭제하는 방법

어떤 번호가 사용되었는지 파악하기 어렵거나 헷갈릴 경우, 하단 기본 여분 필드 출력 반복문 코드 전체를 삭제하고 사용 중인 번호만 상단에 개별적으로 관리하는 방법도 있습니다.

  • 삭제 대상 코드 전체:
<?php for ($i=1; $i<=10; $i++) {?>
<tr>
 <th scope="row"><label for="mb_<?php echo $i?>">여분 필드 <?php echo $i?></label></th>
 <td colspan="3"><input type="text" name="mb_<?php echo $i?>" value="<?php echo $mb['mb_'.$i]?>" id="mb_<?php echo $i?>" class="frm_input" size="30" maxlength="255"></td>
</tr>
<?php }?>

상황별 판단 및 행동 지침

내 상황우선할 판단다음 행동
회원가입 스킨에 여분 필드를 추가하고 관리자 페이지에서도 동일하게 입력을 받고자 할 때/adm/member_form.php 파일 수정 및 변수명 변경($member를 $mb로 변경)스킨에서 작성한 폼 코드를 관리자 수정 페이지에 추가하고 하단 반복문 범위 조정

실전 FAQ

Q. 관리자 회원 수정 페이지에 여분 필드 폼을 추가한 후 하단 반복문(for문) 범위는 어떻게 조정하나요?

  • 실제 해결 및 예외 처리: 상단에 직접 추가한 여분 필드 개수만큼 하단 기본 반복문의 시작 번호를 변경해야 합니다. 예를 들어 mb_1부터 mb_5까지 5개의 필드를 직접 추가했다면 하단 기본 출력 반복문은 <?php for ($i=6; $i<=10; $i++) {?>와 같이 6번부터 시작되도록 수정합니다. 띄엄띄엄 사용한 경우 continue 조건문을 추가하거나 기본 출력 반복문 전체를 삭제하고 필요한 번호만 개별적으로 관리할 수 있습니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.