[G5] 동창회 (동문회) 주소록 연동 회원관리 > 기술자료 | 해피정닷컴

[G5] 동창회 (동문회) 주소록 연동 회원관리 > 기술자료

본문 바로가기

사이트 내 전체검색

[G5] 동창회 (동문회) 주소록 연동 회원관리 > 기술자료

그누보드 [G5] 동창회 (동문회) 주소록 연동 회원관리

페이지 정보


본문

동창회 (동문회) 주소록 연동 회원관리하는 기능입니다.
디비 테이블 설계 내용은 본 강의에 필요한 내용만 적어놨습니다.
각자 상황에 맞도록 설계해서 사용하세요


1. 그누보드5 / data / dbconfig.php   
동창명부 DB 테이블에 사용될 변수 추가

$g5['people_table']      = G5_TABLE_PREFIX.'people'; // 동창명부 테이블
$g5['people_report_table']      = G5_TABLE_PREFIX.'people_report'; // 변경사항 테이블



2. 동창회원 명부 DB 테이블 만들기
idx - 고유번호
email
name


3. 그누보드5 / skin / member / basic / register_form.skin.php   
회원가입 신청에 동창인증 등 기능 추가하기

    <div class="tbl_frm01 tbl_wrap">
        <table>
        <caption>동창인증</caption>
        <tbody>
        <tr>
            <th scope="row"><label for="reg_alumni">동창인증<strong class="sound_only">필수</strong></label></th>
            <td>
                <div style="padding:5px 0;"><a href="#" onclick="open_mbid('<?php echo G5_URL; ?>/page/alumni_win.php', this);" class="btn_submit" style="color:#FFF;">동창인증</a>을 눌러서 동창인증을 하셔야 회원가입이 가능합니다.</div>
                <script>
                function open_mbid(url, field) {
                    var opt = "toolbar=no, resizable=yes, scrollbars=yes, location=no, resize=no,menubar=no, directories=no, copyhistory=0, width=700, height=300, top= 330, left = 370";  
                    window.name = "ori_window";
                    window.open(url, 'new_window', opt);
                }
                </script>
            </td>
        </tr>
        <tr>
            <th scope="row"><label for="reg_year">졸업년도<strong class="sound_only">필수</strong></label></th>
            <td><input type="text" name="mb_10" id="reg_year" value="<?php echo $member['mb_10'] ?>" required class="frm_input required" style="border:0;" readonly></td>
        </tr>
        <tr>
            <th scope="row"><label for="reg_name">이름<strong class="sound_only">필수</strong></label></th>
            <td><input type="text" name="mb_name" id="reg_mb_name" value="<?php echo $member['mb_name'] ?>" <?php echo $required ?> class="frm_input required" style="border:0;" readonly></td>
        </tr>
        </tbody>
        </table>
        <input type="hidden" name="mb_1" value="<?php echo $member['mb_1'] ?>">
        <div style="margin:10px 0 0 0;">※ 동창명부에 등록된 정보는 회원가입후 확인 및 변경이 가능합니다.</div>
    </div>


4. 그누보드5 / page / alumni_win.php
동창인증 새창내용
<?php
include_once('_common.php');

$g5['title'] = "동창인증";

include_once G5_THEME_PATH."/head_sub.php";
$dbconn = mysqli_connect(G5_MYSQL_HOST,G5_MYSQL_USER,G5_MYSQL_PASSWORD,G5_MYSQL_DB);

$sql = "select * from ".$g5['people_table']." where name='".$_POST['name']."' and syear='".$_POST['syear']."' order by syear asc ";
$result = mysqli_query($dbconn,$sql);
$data = mysqli_fetch_array($result);

if (!mysqli_query($dbconn, $sql)) {  // sql 쿼리 오류여부 확인
    printf("<div>sql_queryErrormessage: %s\n</div>", mysqli_error($dbconn));
}

$TDStyle = " style='border-bottom: black 1px solid; border-left: black 1px solid; border-right: black 1px solid; border-top: black 1px solid'" ;
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>회원아이디 검색</title>
<script>
function GoSearch() {
    fom = document.forms[0];
    if ( document.InSearch.syear.value == ""  ) {
        alert("졸업년도를 입력하세요!");
        fom.syear.focus();
        return;
    }
    if (document.InSearch.syear.value.length <= 3) {
        alert("졸업년도는 4자리입니다");
        fom.syear.focus();
        return;
    }
    if ( document.InSearch.name.value == ""  ) {
        alert("이름을 입력하세요!");
        fom.name.focus();
        return;
    }
    document.InSearch.submit();
}
</script>

<style>
* {-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}
a{text-decoration:none;}
th, td { font-size:12px; height:30px; }
.text { font-size: 12px; text-align:center; width:100%; margin:15px 0; }
.input_box { border:1px solid #999; margin:3px 0; height:25px; width:200px; }
.submit { width:100px; height:55px; }

.btn {font-size: 18px; white-space:nowrap; width:100%; padding:.8em 1.5em; font-family: Open Sans, Helvetica,Arial,sans-serif; line-height:18px; display: inline-block;zoom: 1; color: #fff; text-align: center; position:relative; -webkit-transition: border .25s linear, color .25s linear, background-color .25s linear; transition: border .25s linear, color .25s linear, background-color .25s linear;}

.btn.btn-sea{background-color: #08bc9a; border-color: #08bc9a; -webkit-box-shadow: 0 0px 0 #088d74; box-shadow: 0 0px 0 #088d74;}
.btn.btn-sea:hover{background-color:#01a183;}
.btn.btn-sea:active{ top: 3px; outline: none; -webkit-box-shadow: none; box-shadow: none;}

.btn.btn-dark-blue{background-color: #237fbc; border-color: #237fbc; -webkit-box-shadow: 0 0px 0 #1a5c87; box-shadow: 0 0px 0 #1a5c87;}
.btn.btn-dark-blue:hover{background-color:#166ea8;}
.btn.btn-dark-blue:active{ top: 3px; outline: none; -webkit-box-shadow: none; box-shadow: none;}
</style>
</head>
 
<body>
<?php if($syear=="" || $name=="") { ?>
    <br>
    <center>
    <form name="InSearch" method="post">
    <table border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
            <th style="padding-right:10px;">졸업년도</th>
            <td><input type="text" name="syear" class="input_box" value="<?php echo $syear; ?>"></td>
            <td rowspan="2" style="padding-left:10px;"><input type="submit" class="submit btn btn-sea" value="검색" onclick="GoSearch();"></td>
        </tr>
        <tr>
            <th style="padding-right:10px;">이름</th>
            <td><input type="text" name="name" class="input_box" value="<?php echo $member['mb_name']; ?>"></td>
        </tr>
    </table>
    </form>
    </center>
    <div class="text">검색창에서 졸업년도를 입력후 검색을 하면 동창명부에서 정회원 등업여부를 알려드립니다.</div>
    <script>
        fom = document.forms[0];
        fom.syear.focus();
    </script>
    
    <div style="text-align:center;"><input type="submit" value="창닫기" onclick="self.close();" class="btn btn-dark-blue"></div>
<?php 
} elseif ($data['name']) { 
?>
    <script>
    function LogConfirm(search1,search2,search3){
        opener.document.fregisterform.mb_1.value=search1;
        opener.document.fregisterform.mb_10.value=search2;
        opener.document.fregisterform.mb_name.value=search3;
        parent.window.close();
    }
    </script>
    <div class="text">■ 검색 결과에서 선택해주세요 ■ </div>
    <table border="1" style="border-collapse: collapse; width:100%;">
        <tr> 
            <th>비고</th>
            <th>졸업년도</th>
            <th>이름</th>
        </tr>           
        <?php
        $result2 = mysqli_query($dbconn,$sql);
        while($data2 = mysqli_fetch_array($result2)) {
        ?>
        <tr onmouseover="this.style.backgroundcolor='#efefef'" onmouseout="this.style.backgroundcolor='#ffffff'"> 
            <td align="center"<?php echo $TDStyle;?>>
            <?php if ($data2['mb_id']) { ?>
            동창회원 인증
            <?php } else { ?>
            <a href="#" onclick="javascript:LogConfirm('<?php echo $data2['idx'];?>','<?php echo $data2['syear'];?>','<?php echo $data2['name']; ?>')">선택</a>
            <?php } ?>
            </td>
            <td align="center"<?php echo $TDStyle;?>><?php echo $data2['syear']; ?></td>
            <td align="center"<?php echo $TDStyle;?>><?php echo $data2['name']; ?></td>
        </tr>           
        <?php
        }
        ?>
    </table>
    <div class="text">
        ※ 비고에 <span style="font-weight:bold;">동창회원 인증</span>인 경우는 동창회원으로 회원가입된 상태이므로 선택 불가능합니다.<br>
        문의사항은 홈페이지 <span style="font-weight:bold;">동문광장 &gt; 관리자에게 문의</span>로 글을 남기시면 확인후 답변드리겠습니다.
    </div>
    
    <div style="text-align:center; margin-top:15px;">
    <form action="<?php echo $PHP_SELF; ?>">
        <input type="submit" value="다시검색" class="btn btn-sea">
    </form>
    </div>
<?php
} else {
?>
    <script type="text/javascript">
        fom = document.forms[0];
        fom.syear.focus();
    </script>
    <br>
    <center>
    <form name="InSearch" method="post">
    <table border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
            <th style="padding-right:10px;">졸업년도</th>
            <td><input type="text" name="syear" class="input_box" value="<?php echo $syear; ?>"></td>
            <td rowspan="2" style="padding-left:10px;"><input type="submit" class="submit btn btn-sea" value="검색" onclick="GoSearch();"></td>
        </tr>
        <tr>
            <th style="padding-right:10px;">이름</th>
            <td><input type="text" name="name" class="input_box" value="<?php echo $member['mb_name']; ?>" readonly></td>
        </tr>
    </table>
    </form>
    </center>
    <div class="text">검색결과가 없습니다. 정보를 다시 입력해주세요</div>
    <div style="text-align:center;"><input type="submit" value="창닫기" onclick="self.close();" class="btn btn-dark-blue"></div>
<?php
}
?>
</body>
</html>



5. 그누보드5 / bbs / register_form_update.php
회원DB에 졸업년도, 닉네임 등 제어하기

5-1. 졸업년도 체크

else if($w == '')
    $mb_id = trim($_POST['mb_id']);
 else

를 아래와 같이 변경

else if($w == '') {
    $mb_id = trim($_POST['mb_id']); 
    $mb_10 = trim($_POST['mb_10']); // 졸업년도
    if(!$mb_10) { alert('동창인증 정보가 없습니다. 올바른 방법으로 이용해 주십시오.'); }
} else



5-2. 닉네임 변경하기

$mb_nick        = trim($_POST['mb_nick']);

를 아래와 같이 변경

if ($w == '') { $mb_nick = $mb_name.time(); } else { $mb_nick = trim($_POST['mb_nick']); } // 닉네임 변경하기(2018-01-16 해피정닷컴)



5-3. 닉네임없이 회원가입하기

        if (get_session('ss_check_mb_id') != $mb_id || get_session('ss_check_mb_nick') != $mb_nick || get_session('ss_check_mb_email') != $mb_email) {
            set_session('ss_check_mb_id', '');
            set_session('ss_check_mb_nick', '');

를 아래와 같이 변경

        if (get_session('ss_check_mb_id') != $mb_id || get_session('ss_check_mb_email') != $mb_email) { // 닉네임 입력없이 가입하기 (2017-05-29 해피정닷컴)
            set_session('ss_check_mb_id', '');
            //set_session('ss_check_mb_nick', '');



5-4. 동창회원 디비에 이메일 및 아이디 업데이트

if ($w == '') {
    $sql = " insert into {$g5['member_table']}

를 아래와 같이 변경

if ($w == '') {
    if ($mb_1) {
        $sql_alumni = " update {$g5['people_table']} set email='{$mb_email}', mb_id='{$mb_id}' where idx='{$mb_1}' ";
        sql_query($sql_alumni);
    }
    $sql = " insert into {$g5['member_table']}



6. 그누보드5 / adm / member_list.php
관리자 회원관리에서 동창명부 정보 자세히 보기 버튼 추가

        <td headers="mb_list_name" class="td_mbname"><?php echo get_text($row['mb_name']); ?></td

를 아래와 같이 변경

        <td headers="mb_list_name" class="td_mbname"><?php 
        echo get_text($row['mb_name']); 
        if ($row['mb_1']) {
            $sql_alumni = "select * from {$g5['people_table']} where idx='{$row['mb_1']}' ";
            $result_alumni = sql_query($sql_alumni);
            $data_alumni = sql_fetch_array($result_alumni);
            echo " &nbsp;<a href='".G5_URL."/page/alumni_view.php?idx={$data_alumni['idx']}' target='_blank' style='font-size:11px; color:#4ca634'>VIEW</a>";
        }
        ?></td>



7. 그누보드5 / adm / member_form.php
관리자 회원 상세정보에서 졸업년도와 동창명부 고유번호 보이기

    <?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 } ?>

를 아래와 같이 변경

    <?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 }*/ ?>
    <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="30" maxlength="255"></td>
    </tr>
    <tr>
        <th scope="row"><label for="mb_9">학번</label></th>
        <td colspan="3"><input type="text" name="mb_9" value="<?php echo $mb['mb_9'] ?>" id="mb_9" class="frm_input" size="30" maxlength="255"></td>
    </tr>
    <tr>
        <th scope="row"><label for="mb_10">졸업년도</label></th>
        <td colspan="3"><input type="text" name="mb_10" value="<?php echo $mb['mb_10'] ?>" id="mb_10" class="frm_input" size="30" maxlength="255"></td>
    </tr>
 

댓글목록

등록된 댓글이 없습니다.


Total 2,641건 24 페이지
  • RSS
기술자료 목록
2181
PHP   11543  2018-02-22 02:26  
2180
일반   9515  2018-02-14 22:05 ~ 2018-03-02 01:00  
2179
그누보드   11180  2018-02-13 19:04 ~ 2018-02-13 22:44  
2178
전자결제   11569  2018-02-13 15:04 ~ 2018-03-16 05:50  
2177
그누보드   11462  2018-02-03 00:39 ~ 2018-02-05 19:35  
2176
그누보드   11379  2018-01-31 15:37 ~ 2018-03-07 06:06  
2175
Linux   25492  2018-01-30 17:16  
2174
그누보드   11561  2018-01-25 00:04 ~ 2022-04-21 02:47  
2173
그누보드   10182  2018-01-19 14:37  
2172
그누보드   9885  2018-01-18 16:37 ~ 2018-01-18 17:05  
열람
그누보드   13708  2018-01-16 22:29 ~ 2018-01-17 12:50  
2170
일반   10809  2018-01-13 17:22 ~ 2018-01-13 17:23  
2169
그누보드   8936  2018-01-11 17:54 ~ 2018-01-18 09:29  
2168
PHP   10326  2018-01-11 15:24 ~ 2018-01-11 16:24  
2167
Linux   15668  2018-01-09 17:33  
2166
그누보드   10173  2018-01-06 10:33 ~ 2018-05-31 03:51  
2165
그누보드   9437  2018-01-06 03:14 ~ 2020-02-12 04:29  
2164
JavaScript   12174  2018-01-05 17:38 ~ 2018-06-25 01:19  
2163
그누보드   12384  2018-01-03 10:01 ~ 2019-08-13 14:44  
2162
그누보드   21726  2018-01-02 18:20 ~ 2022-05-10 19:00  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.