크게 작게 인쇄

[불당팩]불당팩에 회원이미지 추가하기

회원 이미지 추가

1. 가입부분 코딩 추가

/skin/member/basic/register_form.skin.php

<TR bgcolor="#FFFFFF">
    <TD width="160" class=m_title>회원이미지</TD>
        <TD class=m_padding><INPUT class=m_text type=file name='mb_icon2' size=30>
        <table width="350" border="0" cellspacing="0" cellpadding="0">
        <tr>
        <td class=m_padding3>* 이미지 크기는 가로(<?=$config[cf_member_icon2_width]?>픽셀)x세로(<?=$config[cf_member_icon2_height]?>픽셀) 이하로 해주세요.<br>&nbsp;&nbsp;(gif/jpg/bmp/png만 가능 / 용량:<?=number_format($config[cf_member_icon2_size]/1000)?>k 바이트 이하만 등록됩니다.)
        <? if ($w == "u" && file_exists($mb_icon2)) { ?>
            <br><img src='<?=$mb_icon2?>' align=absmiddle> <input type=checkbox name='del_mb_icon2' value='1'>삭제
        <? } ?>
        </td>
        </tr>
    </table></TD>
</TR>


/bbs/register_form_update.php

// 회원이미지 삭제
$mb_dir2 = "$g4[data_path]/memberimg/".substr($mb_id,0,2);
if ($del_mb_icon2)
    @unlink("$mb_dir2/$mb_id.gif");
$msg2 = "";
// 회원이미지 업로드
$mb_icon2 = "";
if (is_uploaded_file($_FILES[mb_icon2][tmp_name])) 
{
    //if (preg_match("/(\.gif)$/i", $_FILES[mb_icon2][name])) 
    if (preg_match("/\.(jp[e]?g|gif|png|bmp)$/i", $_FILES[mb_icon2][name]))
    {
        // 아이콘 용량이 설정값보다 이하만 업로드 가능
        if ($_FILES[mb_icon2][size] <= $config[cf_member_icon2_size]) 
        {
            @mkdir($mb_dir2, 0707);
            @chmod($mb_dir2, 0707);
            $dest_path2 = "$mb_dir2/$mb_id.gif";
            move_uploaded_file($_FILES[mb_icon2][tmp_name], $dest_path2);
            chmod($dest_path2, 0606);
            if (file_exists($dest_path2)) 
            {
                //=================================================================\
                // 090714
                // gif 파일에 악성코드를 심어 업로드 하는 경우를 방지
                // 에러메세지는 출력하지 않는다.
                //-----------------------------------------------------------------
                $size = getimagesize($dest_path2);
                if ($size[2] != 1) // gif 파일이 아니면 올라간 이미지를 삭제한다.
                    @unlink($dest_path2);
                else
                // 아이콘의 폭 또는 높이가 설정값 보다 크다면 이미 업로드 된 아이콘 삭제
                if ($size[0] > $config[cf_member_icon2_width] || $size[1] > $config[cf_member_icon2_height])
                    @unlink($dest_path2);
                //=================================================================\
            }
        } else 
        {
            $msg2 .= "{$_FILES[mb_icon2][name]} 파일의 용량이 " . number_format($config[cf_member_icon2_size]/1000) . "k 바이트보다 크므로 업로드 할 수 없습니다.\\n";
        }
    }
    else
        $msg2 .= $_FILES[mb_icon2][name] . "은(는) gif/jpg/bmp/png 파일이 아닙니다.";
}


/bbs/register_form.php  

// 회원이미지 경로
$mb_icon2 = "$g4[data_path]/memberimg/".substr($member[mb_id],0,2)."/$member[mb_id].gif";


2. 회원프로필에 이미지 출력

/skin/member/basic/profile.skin.php  

<?
    $mb_icon2 = "$g4[data_path]/memberimg/".substr($mb_id,0,2)."/$member[mb_id].gif";
    if (file_exists($mb_icon2)) { 
        echo "<img src='$mb_icon2' align=absmiddle ><br>"; 
    } 
?><?=$mb_nick?>


3. 관리자 회원관리부분

/adm/member_form.php 


<td>회원이미지</td>
    <td colspan=3>
        <input type=file name='mb_icon2' class=ed><br>이미지 크기는 <?=$config[cf_member_icon2_width]?>x<?=$config[cf_member_icon2_height]?>으로 해주세요.
        <?
        $mb_dir = substr($mb[mb_id],0,2);
        $icon_file = "$g4[data_path]/memberimg/$mb_dir/$mb[mb_id].gif";
        if (file_exists($icon_file2)) {
            echo "<br><img src='$icon_file2' align=absmiddle>";
            echo " <input type=checkbox name='del_mb_icon2' value='1' class='csscheck'>삭제";
        }   
        ?>
    </td>


/adm/member_form_update.php 

// 회원 이미지 삭제
    if ($del_mb_icon2)
        @unlink("$g4[data_path]/memberimg/$mb_dir/$mb_id.gif");

    // 아이콘 업로드
    if (is_uploaded_file($_FILES[mb_icon2][tmp_name])) {
        if (!preg_match("/(\.gif)$/i", $_FILES[mb_icon2][name])) {
            alert($_FILES[mb_icon2][name] . '은(는) gif 파일이 아닙니다.');
        }

        if (preg_match("/(\.gif)$/i", $_FILES[mb_icon2][name])) {
            @mkdir("$g4[data_path]/memberimg/$mb_dir", 0707);
            @chmod("$g4[data_path]/memberimg/$mb_dir", 0707);

            $dest_path2 = "$g4[data_path]/memberimg/$mb_dir/$mb_id.gif";

            move_uploaded_file($_FILES[mb_icon2][tmp_name], $dest_path2);
            chmod($dest_path2, 0606);
            if (file_exists($dest_path2)) 
            {
                //=================================================================\
                // 090714
                // gif 파일에 악성코드를 심어 업로드 하는 경우를 방지
                // 에러메세지는 출력하지 않는다.
                //-----------------------------------------------------------------
                $size = getimagesize($dest_path2);
                if ($size[2] != 1) // gif 파일이 아니면 올라간 이미지를 삭제한다.
                    @unlink($dest_path2);
                else
                // 아이콘의 폭 또는 높이가 설정값 보다 크다면 이미 업로드 된 아이콘 삭제
                if ($size[0] > $config[cf_member_icon2_width] || $size[1] > $config[cf_member_icon2_height])
                    @unlink($dest_path2);
                //=================================================================\
            }
        } else {
            $msg2 .= "{$_FILES[mb_icon2][name]} 파일의 용량이 " . number_format($config[cf_member_icon2_size]/1000) . "k 바이트보다 크므로 업로드 할 수 없습니다.\\n";
        }
    }

4. 관리자기본설정 이미지크기,용량 설정

adm/config_form.php


<tr class='ht'>
    <td>회원이미지 용량</td>
    <td><input type=text class=ed name='cf_member_icon2_size' size='5' value='<?=$config[cf_member_icon2_size]?>'> 바이트 이하</td>
    <td>회원이미지 사이즈</td>
    <td>폭 <input type=text class=ed name='cf_member_icon2_width' size='5' value='<?=$config[cf_member_icon2_width]?>'> 픽셀 , 높이 <input type=text class=ed name='cf_member_icon2_height' size='5' value='<?=$config[cf_member_icon2_height]?>'> 픽셀 이하</td>
</tr>

adm/config_form_update.php

cf_member_icon2_size    = '$cf_member_icon2_size',
cf_member_icon2_width   = '$cf_member_icon2_width',
cf_member_icon2_height  = '$cf_member_icon2_height',

db테이블 g4_config에 이미지관련테이블 업데이트
db - g4_config
cf_member_icon2_size
cf_member_icon2_width
cf_member_icon2_height
필드추가



※ 로그인 하시면 원본파일을 볼 수 있습니다. ※

0
코멘트 0
자동등록방지 코드
그누보드팁 | 전체게시물 160
안내

포인트안내닫기

  • 글읽기0
  • 글쓰기100
  • 댓글쓰기50
  • 다운로드-500
그누보드팁리스트
번호 제목 글쓴이 날짜 조회 추천
80 파일첨부 슈퍼맨 웹스터디 02-13 3632 0
79 텍스트 슈퍼맨 웹스터디 02-13 4392 1
78 텍스트 슈퍼맨 웹스터디 02-09 4133 0
77 텍스트 링크 슈퍼맨 웹스터디 02-09 3962 0
76 파일첨부 +2 링크 슈퍼맨 웹스터디 01-20 5047 0
75 파일첨부 +1 슈퍼맨 웹스터디 01-18 4358 0
74 파일첨부 슈퍼맨 웹스터디 01-18 4053 0
73 텍스트
[불당팩]불당팩에 회원이미지 추가하기
슈퍼맨 웹스터디 01-11 3701 0
72 텍스트 슈퍼맨 웹스터디 01-10 3838 0
71 텍스트 슈퍼맨 웹스터디 01-09 4526 0
70 텍스트 슈퍼맨 웹스터디 01-09 5505 0
69 텍스트 슈퍼맨 웹스터디 01-07 3871 0
68 텍스트 +1 슈퍼맨 관리자 01-04 3954 0
67 텍스트 슈퍼맨 웹스터디 01-04 4522 0
66 텍스트 슈퍼맨 웹스터디 01-04 3954 0
65 텍스트 링크 슈퍼맨 관리자 01-03 4523 0
64 텍스트 +1 슈퍼맨 웹스터디 12-22 6850 0
63 텍스트 +2 슈퍼맨 웹스터디 12-20 5113 0
62 텍스트 슈퍼맨 관리자 12-20 4878 0
61 텍스트 슈퍼맨 웹스터디 12-19 4621 0