[G4] 회원가입시 회원이미지 등록 받기 > 기술자료 | 해피정닷컴

[G4] 회원가입시 회원이미지 등록 받기 > 기술자료

본문 바로가기

사이트 내 전체검색

[G4] 회원가입시 회원이미지 등록 받기 > 기술자료

그누보드 [G4] 회원가입시 회원이미지 등록 받기

페이지 정보


본문

웹프리존 님이 올려주신 팁의 내용에서 일부 수정했습니다.
원본. http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=27623
수정1. 회원이미지 업로드 폴더 :  /data/memberimg  ->  /data/member_image
수정2. 관리자 > 회원관리 > 정보수정 : 기능추가
 
 
1. 관리자 - 기본환경설정 - 맨 아래 여분필드
cf_1 : 58 <-- 가로사이즈
cf_2 : 58 <-- 세로사이즈
cf_3 : 50000 <-- 파일용량
 
 
2. /skin/member/basic/register_form.skin.php
        <? if ($member[mb_level] >= $config[cf_icon_level]) { ?>
        <TR bgcolor="#FFFFFF">
            <TD width="160" class=m_title>회원아이콘</TD>
            <TD class=m_padding><INPUT class=ed type=file name='mb_icon' size=30>
                <table width="350" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                        <td class=m_padding3>* 이미지 크기는 가로(<?=$config[cf_member_icon_width]?>픽셀)x세로(<?=$config[cf_member_icon_height]?>픽셀) 이하로 해주세요.<br>&nbsp;&nbsp;(gif만 가능 / 용량:<?=number_format($config[cf_member_icon_size])?>바이트 이하만 등록됩니다.)
                            <? if ($w == "u" && file_exists($mb_icon)) { ?>
                                <br><img src='<?=$mb_icon?>' align=absmiddle> <input type=checkbox name='del_mb_icon' value='1'>삭제
                            <? } ?>
                        </td>
                    </tr>
                </table></TD>
        </TR>
        <? } ?>
 
를 아래와 같이 변경
 
        <?php if ($member[mb_level] >= $config[cf_icon_level]) { ?>
        <TR bgcolor="#FFFFFF">
            <TD width="160" class=m_title>회원아이콘</TD>
            <TD class=m_padding><INPUT class=ed type=file name='mb_icon' size=30>
                <table width="350" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                        <td class=m_padding3>* 이미지 크기는 가로(<?php echo $config[cf_member_icon_width]; ?>픽셀)x세로(<?php echo $config[cf_member_icon_height]; ?>픽셀) 이하로 해주세요.<br>&nbsp;&nbsp;(gif만 가능 / 용량:<?php echo number_format($config[cf_member_icon_size]); ?>바이트 이하만 등록됩니다.)
                            <?php if ($w == "u" && file_exists($mb_icon)) { ?>
                                <br><img src='<?php echo $mb_icon; ?>' align=absmiddle> <input type=checkbox name='del_mb_icon' value='1'>삭제
                            <? } ?>
                        </td>
                    </tr>
                </table></TD>
        </TR>
        <TR bgcolor="#FFFFFF">
            <TD width="160" class=m_title>회원이미지</TD>
            <TD class=m_padding><INPUT class=ed type=file name='mb_1' size=30>
                <table width="350" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                        <td class=m_padding3>* 이미지 크기는 가로(<?php echo $config[cf_1]; ?>픽셀)x세로(<?php echo $config[cf_2]; ?>픽셀) 이하로 해주세요.<br>&nbsp;&nbsp;(gif만 가능 / 용량:<?php echo number_format($config[cf_3]); ?>바이트 이하만 등록됩니다.)
                            <?php if ($w == "u" && file_exists($mb_1)) { ?>
                                <br><img src='<?=$mb_1?>' align=absmiddle> <input type=checkbox name='del_mb_1' value='1'>삭제
                            <?php } ?>
                        </td>
                    </tr>
                </table></TD>
        </TR>
        <?php } ?>
 
 
3. /bbs/register_form.php
$mb_icon = "$g4[path]/data/member/".substr($member[mb_id],0,2)."/$member[mb_id].gif";
 
를 아래와 같이 수정
 
$mb_icon = "$g4[path]/data/member/".substr($member[mb_id],0,2)."/$member[mb_id].gif";
$mb_1 = "$g4[path]/data/member_image/".substr($member[mb_id],0,2)."/$member[mb_id].gif"; // 회원이미지
 
 
4. ftp 접속해서 /data/ 폴더안에 member_image 폴더 추가, 권한 707 로 변경
 
 
5-1. /bbs/register_form_update.php
 
$mb_dir = "$g4[path]/data/member/".substr($mb_id,0,2);
 
// 아이콘 삭제
if ($del_mb_icon)
    @unlink("$mb_dir/$mb_id.gif");
 
를 아래와 같이 내용추가
 
$mb_dir = "$g4[path]/data/member/".substr($mb_id,0,2);
$mb1_dir = "$g4[path]/data/member_image/".substr($mb_id,0,2); // 회원이미지 추가
 
// 아이콘 삭제
if ($del_mb_icon)
    @unlink("$mb_dir/$mb_id.gif");
// 회원이미지 삭제
if ($del_mb_1)
    @unlink("$mb1_dir/$mb_id.gif"); 
 
 
5-2. /bbs/register_form_update.php
// 아이콘 업로드  아래쪽에  내용추가
 
// 회원이미지 업로드
$mb_1 = "";
if (is_uploaded_file($_FILES[mb_1][tmp_name])) 
{
    if (preg_match("/(\.gif)$/i", $_FILES[mb_1][name])) 
    {
        // 아이콘 용량이 설정값보다 이하만 업로드 가능
        if ($_FILES[mb_1][size] <= $config[cf_3]) 
        {
            @mkdir($mb1_dir, 0707);
            @chmod($mb1_dir, 0707);
            $dest_path = "$mb1_dir/$mb_id.gif";
            move_uploaded_file($_FILES[mb_1][tmp_name], $dest_path);
            chmod($dest_path, 0606);
            if (file_exists($dest_path)) 
            {
                //=================================================================\
                // 090714
                // gif 파일에 악성코드를 심어 업로드 하는 경우를 방지
                // 에러메세지는 출력하지 않는다.
                //-----------------------------------------------------------------
                $size = getimagesize($dest_path);
                if ($size[2] != 1) // gif 파일이 아니면 올라간 이미지를 삭제한다.
                    @unlink($dest_path);
                else
                // 아이콘의 폭 또는 높이가 설정값 보다 크다면 이미 업로드 된 아이콘 삭제
                if ($size[0] > $config[cf_1] || $size[1] > $config[cf_2])
                    @unlink($dest_path);
                //=================================================================\
            }
        }
    }
    else
        $msg .= $_FILES[mb_1][name] . "은(는) gif 파일이 아닙니다.";
}
 
 
6. /adm/member_form.php
 
<tr class='ht'>
    <td>주소</td>
    <td>
        <input type=text class=ed name='mb_zip1' size=4 maxlength=3 readonly itemname='우편번호 앞자리' value='<? echo $mb[mb_zip1] ?>'> -
        <input type=text class=ed name='mb_zip2' size=4 maxlength=3 readonly itemname='우편번호 뒷자리' value='<? echo $mb[mb_zip2] ?>'>
        <a href="javascript:;" onclick="win_zip('fmember', 'mb_zip1', 'mb_zip2', 'mb_addr1', 'mb_addr2');"><img src='<?=$g4[bbs_img_path]?>/btn_zip.gif' align=absmiddle border=0></a>
        <br><input type=text class=ed name='mb_addr1' size=40 readonly value='<? echo $mb[mb_addr1] ?>'>
        <br><input type=text class=ed name='mb_addr2' size=25 itemname='상세주소' value='<? echo $mb[mb_addr2] ?>'> 상세주소 입력</td>
    <td>회원아이콘</td>
    <td colspan=3>
        <input type=file name='mb_icon' class=ed><br>이미지 크기는 <?=$config[cf_member_icon_width]?>x<?=$config[cf_member_icon_height]?>으로 해주세요.
        <?
        $mb_dir = substr($mb[mb_id],0,2);
        $icon_file = "$g4[path]/data/member/$mb_dir/$mb[mb_id].gif";
        if (file_exists($icon_file)) {
            echo "<br><img src='$icon_file' align=absmiddle>";
            echo " <input type=checkbox name='del_mb_icon' value='1' class='csscheck'>삭제";
        }   
        ?>
    </td>
</tr>
 
를 아래와 같이 변경
 
 
<tr class='ht'>
    <td>주소</td>
    <td colspan="3">
        <input type=text class=ed name='mb_zip1' size=4 maxlength=3 readonly itemname='우편번호 앞자리' value='<?php echo $mb[mb_zip1]; ?>'> -
        <input type=text class=ed name='mb_zip2' size=4 maxlength=3 readonly itemname='우편번호 뒷자리' value='<?php echo $mb[mb_zip2]; ?>'>
        <a href="javascript:;" onclick="win_zip('fmember', 'mb_zip1', 'mb_zip2', 'mb_addr1', 'mb_addr2');"><img src='<?php echo $g4[bbs_img_path]; ?>/btn_zip.gif' align=absmiddle border=0></a>
        <br><input type=text class=ed name='mb_addr1' size=40 readonly value='<?php echo $mb[mb_addr1]; ?>'>
        <input type=text class=ed name='mb_addr2' size=25 itemname='상세주소' value='<?php echo $mb[mb_addr2]; ?>'> 상세주소 입력</td>
</tr>
<tr class='ht'>
    <td>회원아이콘</td>
    <td>
        <input type=file name='mb_icon' class=ed><br>이미지 크기는 <?php echo $config[cf_member_icon_width]; ?>x<?php echo $config[cf_member_icon_height]; ?>으로 해주세요.
        <?
        $mb_dir = substr($mb[mb_id],0,2);
        $icon_file = "$g4[path]/data/member/$mb_dir/$mb[mb_id].gif";
        if (file_exists($icon_file)) {
            echo "<br><img src='$icon_file' align=absmiddle>";
            echo " <input type=checkbox name='del_mb_icon' value='1' class='csscheck'>삭제";
        }   
        ?>
    </td>
    <td>회원이미지</td>
    <td>
        <input type=file name='mb_1' class=ed><br>이미지 크기는 <?php echo $config[cf_1]; ?>x<?php echo $config[cf_2]; ?>으로 해주세요.
        <?php
        $mb1_dir = substr($mb[mb_id],0,2);
        $mb_1 = "$g4[path]/data/member_image/$mb1_dir/$mb[mb_id].gif";
        if (file_exists($mb_1)) {
            echo "<br><img src='$mb_1' align=absmiddle>";
            echo " <input type=checkbox name='del_mb_1' value='1' class='csscheck'>삭제";
        }   
        ?>
    </td>
</tr>
 
 
7. /adm/member_form_update.php
    // 회원 아이콘 삭제    
 
하단에 아래 내용 추가
 
    // 회원 이미지 삭제
    if ($del_mb_icon)
        @unlink("$g4[path]/data/member_image/$mb_dir/$mb_id.gif");
 
    // 회원이미지 업로드
    $mb_1 = "";
    if (is_uploaded_file($_FILES[mb_1][tmp_name])) {
        if (!preg_match("/(\.gif)$/i", $_FILES[mb_1][name])) {
            alert($_FILES[mb_1][name] . '은(는) gif 파일이 아닙니다.');
        }
 
        if (preg_match("/(\.gif)$/i", $_FILES[mb_1][name])) {
            @mkdir("$g4[path]/data/member_image/$mb_dir", 0707);
            @chmod("$g4[path]/data/member_image/$mb_dir", 0707);
 
            $dest_path = "$g4[path]/data/member_image/$mb_dir/$mb_id.gif";
 
            move_uploaded_file($_FILES[mb_1][tmp_name], $dest_path);
            chmod($dest_path, 0606);
 
            if (file_exists($dest_path)) {
                $size = getimagesize($dest_path);
                // 이미지의 폭 또는 높이가 설정값 보다 크다면 이미 업로드 된 이미지 삭제
                if ($size[0] > $config[cf_1] || $size[1] > $config[cf_2]) {
                    @unlink($dest_path);
                }
            }
        }
    }


등록된 이미지 게시판에 적용하기
https://www.happyjung.com/bbs/board.php?bo_table=lecture&wr_id=1378
 
 
 
참고자료

댓글목록

등록된 댓글이 없습니다.


Total 459건 16 페이지
  • RSS
기술자료 목록
159
그누보드   16591  2013-01-16 16:19  
158
그누보드   14996  2012-12-26 22:06 ~ 2024-01-12 08:17  
157
그누보드   12618  2012-12-24 13:51  
156
그누보드   19800  2012-12-03 08:27  
155
그누보드   16405  2012-11-30 00:46  
154
그누보드   16279  2012-11-10 14:38 ~ 2017-01-21 00:00  
153
그누보드   15005  2012-11-08 04:05  
152
그누보드   11685  2012-11-07 22:01  
151
그누보드   13736  2012-11-05 02:06  
150
그누보드   11622  2012-11-04 18:20  
149
그누보드   17845  2012-11-03 04:22 ~ 2018-12-18 02:42  
148
그누보드   10687  2012-11-02 23:18  
147
그누보드   11282  2012-11-01 22:20  
146
그누보드   13240  2012-10-30 22:59  
145
그누보드   12077  2012-10-29 23:37  
144
그누보드   13409  2012-10-29 23:09  
143
그누보드   12683  2012-10-29 21:09  
열람
그누보드   13718  2012-10-26 06:49  
141
그누보드   13491  2012-10-25 17:05 ~ 2020-10-15 13:42  
140
그누보드   12749  2012-10-18 14:20 ~ 2014-12-11 00:00  

검색

해피정닷컴 정보

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

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