관리자 페이지에서 테이블 추가 후 별도의 정보입력 페이지 만들기 채택완료
고등학생들이 이용하는 대학 수능점수 반영방법을 계산하는 페이지를 만들고 있습니다.
회원의 수능점수를 member_form에 추가하고 그 값을 불러와 자동으로계산하게 하려고 합니다.
여분필드 아래쪽으로 다음과 같이 추가하고 db에 저장하는데 까지 성공해 저장된 값도 잘 불러와지고 있습니다. 추가한 정보는 선택과목명, 표준점수, 백분위, 등급 입니다. 값을 불러올 때는 <?php echo ($member['mb_000']) ?> 을 이용하고 있고요,,
<?php
$sub_menu = "200100";
include_once('./_common.php');
auth_check($auth[$sub_menu], 'w');
if ($w == '')
{
$required_mb_id = 'required';
$required_mb_id_class = 'required alnum_';
$required_mb_password = 'required';
$sound_only = '<strong class="sound_only">필수</strong>';
$mb['mb_mailling'] = 1;
$mb['mb_open'] = 1;
$mb['mb_level'] = $config['cf_register_level'];
$html_title = '추가';
}
else if ($w == 'u')
{
$mb = get_member($mb_id);
if (!$mb['mb_id'])
alert('존재하지 않는 회원자료입니다.');
if ($is_admin != 'super' && $mb['mb_level'] >= $member['mb_level'])
alert('자신보다 권한이 높거나 같은 회원은 수정할 수 없습니다.');
$required_mb_id = 'readonly';
$required_mb_password = '';
$html_title = '수정';
$mb['mb_name'] = get_text($mb['mb_name']);
$mb['mb_nick'] = get_text($mb['mb_nick']);
$mb['mb_email'] = get_text($mb['mb_email']);
$mb['mb_homepage'] = get_text($mb['mb_homepage']);
$mb['mb_birth'] = get_text($mb['mb_birth']);
$mb['mb_tel'] = get_text($mb['mb_tel']);
$mb['mb_hp'] = get_text($mb['mb_hp']);
$mb['mb_addr1'] = get_text($mb['mb_addr1']);
$mb['mb_addr2'] = get_text($mb['mb_addr2']);
$mb['mb_addr3'] = get_text($mb['mb_addr3']);
$mb['mb_signature'] = get_text($mb['mb_signature']);
$mb['mb_recommend'] = get_text($mb['mb_recommend']);
$mb['mb_profile'] = get_text($mb['mb_profile']);
$mb['mb_1'] = get_text($mb['mb_1']);
$mb['mb_2'] = get_text($mb['mb_2']);
$mb['mb_3'] = get_text($mb['mb_3']);
$mb['mb_4'] = get_text($mb['mb_4']);
$mb['mb_5'] = get_text($mb['mb_5']);
$mb['mb_6'] = get_text($mb['mb_6']);
$mb['mb_7'] = get_text($mb['mb_7']);
$mb['mb_8'] = get_text($mb['mb_8']);
$mb['mb_9'] = get_text($mb['mb_9']);
$mb['mb_10'] = get_text($mb['mb_10']);
$mb['mb_11'] = get_text($mb['mb_11']);
$mb['mb_kohisgr'] = get_text($mb['mb_kohisgr']);
$mb['mb_korgr'] = get_text($mb['mb_korgr']);
$mb['mb_mathgr'] = get_text($mb['mb_mathgr']);
$mb['mb_enggr'] = get_text($mb['mb_enggr']);
$mb['mb_such1gr'] = get_text($mb['mb_such1gr']);
$mb['mb_such2gr'] = get_text($mb['mb_such2gr']);
$mb['mb_foringr'] = get_text($mb['mb_foringr']);
$mb['mb_korper'] = get_text($mb['mb_korper']);
$mb['mb_mathper'] = get_text($mb['mb_mathper']);
$mb['mb_such1per'] = get_text($mb['mb_such1per']);
$mb['mb_such2per'] = get_text($mb['mb_such2per']);
$mb['mb_korstdsco'] = get_text($mb['mb_korstdsco']);
$mb['mb_mathstdsco'] = get_text($mb['mb_mathstdsco']);
$mb['mb_such1stdsco'] = get_text($mb['mb_such1stdsco']);
$mb['mb_such2stdsco'] = get_text($mb['mb_such2stdsco']);
$mb['mb_korsubcho'] = get_text($mb['mb_korsubcho']);
$mb['mb_mathsubcho'] = get_text($mb['mb_msthsubcho']);
$mb['mb_such1subcho'] = get_text($mb['mb_such1subcho']);
$mb['mb_such2subcho'] = get_text($mb['mb_such2subcho']);
$mb['mb_forinsubcho'] = get_text($mb['mb_forinsubcho']);
}
그런데, 지금은 이 값을 저장하거나 수정하기 위해선 register_form을 이용해야 합니다.
회원가입 때 입력하고나 나중에 회원정보 수정으로 들어가야 하는 것이죠..
이 정보들을 회원정보 수정이 아닌 별도의 페이지를 만들어 관리하고 싶은데
방법을 모르겠습니다.
고수님들의 도움 부탁드립니다. 꾸~~~벅...
답변 6개
이 정보들을 회원정보 수정이 아닌 별도의 페이지를 만들어 관리하고 싶은데 방법을 모르겠습니다....
===
파일을 복사하시고
필요한 것만 남기고 나머지는 빼버리면 되지 않을까요
답변에 대한 댓글 3개
==
이 부분은 어려움이 없나요?
bbs/register_form_update.php
/skin/member/basic/register_form.skin.php
이 세 파일을 이름만 바꾼 쌍둥이 파일을 만들고 부분 부분 경로에 맞게 조절하는 것으로 해결했습니다! 전에도 같은 방법으로 시도했었는데 로그인 정보 때문에 직접 들어갈 수 없었던 거였네요.
/skin/member/basic/register_000form.skin.php에서 입력양식을 바꾸고 회원이 직접 입력하게 하니 자동으로 db에 저장되어 adm/member_form.php에 만든 테이블에서 확인할 수 있었고 회원들은 재입력 할 필요 없이 불러올 수 있게 되었습니다.
대학 수능점수 반영방법을 계산하는 ...
==
이부분은 대학마다 반영방법이나 비율이 달라 복잡할 뿐, 전부터 엑셀로 만들어 작업하던 수식들이 있어 입력된 셀 값을 바탕으로 스크립트로 바꾸는데 어려움은 없었습니다.
댓글을 작성하려면 로그인이 필요합니다.

/skin/member/basic/register_000form.skin.php 파일을 위와같이 입력하면 다음과 같이 회원폼에 저장되게 되었습니다.
![]()
댓글을 작성하려면 로그인이 필요합니다.
전체적인 소스코드를 확인할 수 없지만 대략적으로 다음과 같이 시도해 볼 수 있을 것 같습니다.
</p>
<p>// 대학 수능점수 입력 폼을 추가합니다.</p>
<p><?php if ($w == '' || $w == 'u') { ?>
<div class="tbl_frm01 tbl_wrap">
<table>
<caption>대학 수능점수 입력</caption>
<colgroup>
<col class="grid_4">
<col>
</colgroup>
<tbody>
<tr>
<th scope="row">선택과목명</th>
<td><input type="text" name="subject_name" value="<?php echo $member['subject_name']; ?>"></td>
</tr>
<tr>
<th scope="row">표준점수</th>
<td><input type="text" name="standard_score" value="<?php echo $member['standard_score']; ?>"></td>
</tr>
<tr>
<th scope="row">백분위</th>
<td><input type="text" name="percentile" value="<?php echo $member['percentile']; ?>"></td>
</tr>
<tr>
<th scope="row">등급</th>
<td><input type="text" name="grade" value="<?php echo $member['grade']; ?>"></td>
</tr>
</tbody>
</table>
</div>
<?php } ?></p>
<p>// member_form_update.php 파일 내에서 수정
// 대학 수능점수 정보를 저장하고 수정하는 코드를 추가합니다.</p>
<p><?php
if ($w == '' || $w == 'u') {
$subject_name = $_POST['subject_name'];
$standard_score = $_POST['standard_score'];
$percentile = $_POST['percentile'];
$grade = $_POST['grade'];</p>
<p> // 데이터베이스에 대학 수능점수 정보 저장
sql_query("INSERT INTO `g5_member_exam_scores` (mb_id, subject_name, standard_score, percentile, grade) VALUES ('$mb_id', '$subject_name', '$standard_score', '$percentile', '$grade') ON DUPLICATE KEY UPDATE subject_name = '$subject_name', standard_score = '$standard_score', percentile = '$percentile', grade = '$grade'");
}
참고하셔서 원하시는 로직으로 구현하시면 가능 할 것 같습니다.
댓글을 작성하려면 로그인이 필요합니다.
회원가입 페이지 register_form.php에서 이루어지니 /bbs에 별도의 페이지(예로 register_gradeform.php 와 register_gradeform_update.php)를 만들고 <===회원가입 페이지에 만들어서는 안됩니다
register_gradeform.php/register_gradeform_update.php를 어떻게 만들었는지 모르겟으나
adm폴더에 넣고 adm/member_form.php화일에서 include하면 됩니다
그렇게 해야 관리자가 회원마다 등록/수정 하기가 되죠
include_once('register_gradeform.skin.php');
답변에 대한 댓글 2개
회원스킨 폴더(skin/member/basic)에 넣어서 사용하면 됩니다
register_gradeform_update.php ==> register_form_update.tail.skin.php 화일명 변경
include_once($member_skin_path.'/register_gradeform.skin.php'); <==이것만 include하면
위에서 이름변경한 화일은 회원 가입/수정 후 자동으로 include 적용 됩니다
include 하여 사용하는 화일은 include_once('./_common.php')는 필요 없으며
실제 실행될 내용만 넣으면 됩니다
댓글을 작성하려면 로그인이 필요합니다.
별도 페이지? 음....일단.
admin.menu200.php 파일을열어서 메뉴를추가해주면됩니다.
array('200000', '회원관리', G5_ADMIN_URL . '/member_list.php', 'member'),
array('200100', '회원관리', G5_ADMIN_URL . '/member_list.php', 'mb_list'),
array('200110', '별도회원관리', G5_ADMIN_URL . '/별도화원관리.php', 'mb_list'),
그리고 현재 페이지 별도회원관리.php 파일 에서 메뉴식별번호 추가된 넘버와 똑같이 해주면 됩니다. 화이팅!~
<?php
$sub_menu = "200110";
include_once('./_common.php');
auth_check($auth[$sub_menu], 'w');
if ($w == '')
이하 생략
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인