테스트 사이트 - 개발 중인 베타 버전입니다

회원아이콘 파일 업데이트 경로 한번 봐주십시오. 채택완료

해날 8년 전 조회 5,273

사용하고자 하는 G5용 아이콘샵 게시판스킨입니다. 

http://sir.kr/g5_skin/10726">http://sir.kr/g5_skin/10726 

G5에는 다행히 이 스킨이 있어서 사용해봤습니다.

저작자님이 시험삼아 하셨다는데 되긴 하더라구요.

 

아이콘샵은 구매시 해당회원의 아이디 앞두글자를 떼내서 

/data/member  폴더에 생성이 되고 고른 아이콘이 저장되는 방식입니다. 

admin이면 /data/member/ad/admin.gif

test면 /data/member/te/test.gif 

이런식이더라구요. (앞두글자가 같을 경우도 있을것 같은데 왜 굳이 아이디로 하지 않았는지 궁금하고)

 

좌우지간 설치후 첨엔 되는데 

변경하면 정확히 말하면 되다가 안됩니다.

서버처리시간문젠가 싶어서 기다려도 보고 캐시제거 새로고침도 해보고 했는데

되다 안되다 그러는데 그러다가 쭉 안됩니다. 

확인을 해봤더니...

 

최종 클릭 구매한 아이콘명으로 관리자에서 포인트구매내역에 찍히는데 포인트쪽은 이상이 없는것 같은데 말이죠.

data 폴더에 확인해보면 실제 아이콘 이미지는 다른것이 여전히 변경전 아이콘이 남아 있는 문제가 있습니다.

 

즉 덮어씌워지지 않는것 같았습니다.

 

아무래도 경로 문제 같기도 하구요. 

 

 

 

제가 까막눈이라... 다시한번 올려봅니다.

 

고수님들께서 한번 봐주시면 감사하겠습니다.

 

 

 

 

 

 

 

아래 부분들이 처리하는 곳인것 같습니다.

/bbs/iconbuy_update.php

</p><p style="font-size: 14.6667px;"><?php</p><p style="font-size: 14.6667px;">include_once('./_common.php');</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if (!$board['bo_table']) {</p><p style="font-size: 14.6667px;">   alert('존재하지 않는 게시판입니다.', G5_URL);</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if (!$bo_table) {</p><p style="font-size: 14.6667px;">    $msg = "bo_table 값이 넘어오지 않았습니다.\\n\\nboard.php?bo_table=code 와 같은 방식으로 넘겨 주세요.";</p><p style="font-size: 14.6667px;">    alert($msg);</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if (isset($wr_id) && $wr_id) {</p><p style="font-size: 14.6667px;">    // 글이 없을 경우 해당 게시판 목록으로 이동</p><p style="font-size: 14.6667px;">    if (!$write['wr_id']) {</p><p style="font-size: 14.6667px;">        $msg = '글이 존재하지 않습니다.\\n\\n글이 삭제되었거나 이동된 경우입니다.';</p><p style="font-size: 14.6667px;">        alert($msg, './board.php?bo_table='.$bo_table);</p><p style="font-size: 14.6667px;">    }</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span></p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>if ($is_guest) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">		</span>$msg = "비회원은 이 게시판에 접근할 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.";</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">		</span>alert($msg, './login.php?wr_id='.$wr_id.$qstr.'&amp;url='.urlencode(G5_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id.$qstr));</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">$view = get_view($write, $board, $board_skin_path);</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">$mb_id = isset($_SESSION['ss_mb_id']) ? trim($_SESSION['ss_mb_id']) : '';</p><p style="font-size: 14.6667px;">if(!$mb_id)</p><p style="font-size: 14.6667px;">    alert('회원아이디 값이 없습니다. 올바른 방법으로 이용해 주십시오.');</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">//echo $view['wr_1'];echo "|"; 가격</p><p style="font-size: 14.6667px;">//echo $view['wr_2'];echo "|"; 레벨</p><p style="font-size: 14.6667px;">//echo $view['wr_3']; 수량</p><p style="font-size: 14.6667px;">//echo $view['file'][0]['view'];</p><p style="font-size: 14.6667px;">//echo $view['file'][0]['path'];</p><p style="font-size: 14.6667px;">//echo $view['file'][0]['file'];</p><p style="font-size: 14.6667px;">$iconfile = G5_DATA_PATH."/file/".$bo_table."/".$view['file'][0]['file'];</p><p style="font-size: 14.6667px;">$iconsize = str_replace("byte", "", $view['file'][0]['size']);</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">//설정</p><p style="font-size: 14.6667px;">$iconpoint_max = 10000;</p><p style="font-size: 14.6667px;">$iconlevel_max = 2;</p><p style="font-size: 14.6667px;">$iconamount_max = 1000;</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">//파일 존재 검사</p><p style="font-size: 14.6667px;">if($view['file'][0]['file'] == "") {</p><p style="font-size: 14.6667px;">    alert('아이콘 파일을 업로드 해주셔야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">//숫자 여부 검사</p><p style="font-size: 14.6667px;">if(!is_numeric($view['wr_1'])) {</p><p style="font-size: 14.6667px;">    alert('가격에는 올바른 숫자를 입력해야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if($view['wr_1'] < 1) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>alert('가격에는 0 이상의 숫자를 입력해야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if($view['wr_1'] > $iconpoint_max) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>alert('가격에는 '.$iconpoint_max.' 이하의 숫자를 입력해야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if(!is_numeric($view['wr_2'])) {</p><p style="font-size: 14.6667px;">    alert('레벨에는 올바른 숫자를 입력해야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if($view['wr_2'] < 2) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>alert('레벨에는 1 이상의 숫자를 입력해야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if($view['wr_2'] > $iconlevel_max) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>alert('레벨에는 '.$iconlevel_max.' 이하의 숫자를 입력해야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if(!is_numeric($view['wr_3'])) {</p><p style="font-size: 14.6667px;">    alert('수량에는 올바른 숫자를 입력해야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">if($view['wr_3'] > $iconamount_max) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>alert('수량에는 '.$iconamount_max.' 이하의 숫자를 입력해야 합니다.');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">//숫자 변수 사용</p><p style="font-size: 14.6667px;">$iconpoint = $view['wr_1'] * (-1);</p><p style="font-size: 14.6667px;">$iconlevel = $view['wr_2'];</p><p style="font-size: 14.6667px;">$iconamount = $view['wr_3'];</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">// 레벨 검사</p><p style="font-size: 14.6667px;">if ($member[mb_level] < $iconlevel) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>alert("현재 레벨(".$member[mb_level].")이 부족해서 아이콘 구입(".$iconlevel.")이 불가합니다."); </p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">// 수량 검사</p><p style="font-size: 14.6667px;">if ($iconamount < 1) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>alert("현재 수량이 부족해서 아이콘 구입이 불가합니다."); </p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">// 포인트 검사</p><p style="font-size: 14.6667px;">if ($member[mb_point] + $iconpoint < 0) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>alert("보유하신 포인트(".number_format($member[mb_point]).")가 없거나 모자라서 아이콘 구입(".number_format($iconpoint).")이 불가합니다.\\n\\n포인트를 모으신 후 다시 구입해 주십시오."); </p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">// 수량 차감, 포인트 차감</p><p style="font-size: 14.6667px;">if(get_session("iconbuy-".$bo_table."-".$wr_id) == true) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>$msg_point = "포인트 소모 없이 변경했습니다.";</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;">else if(get_session("iconbuy-".$bo_table."-".$wr_id) == false) {</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>insert_point($mb_id, $iconpoint, "아이콘구입 - " . cut_str($write[wr_subject], 40), $bo_table, $wr_id, "아이콘구입 - ".G5_SERVER_TIME);</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>$msg_point = "아이콘 구입으로 ".$iconpoint." 포인트를 소모했습니다.";</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>// 세션 추가</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>set_session("iconbuy-".$bo_table."-".$wr_id, true); </p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span></p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>$iconamount = $iconamount - 1;</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>$sql = " update {$write_table}</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">				</span>set  wr_3 = '{$iconamount}'</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">			</span>  where wr_id = '{$wr_id}' ";</p><p style="font-size: 14.6667px;"><span class="Apple-tab-span" style="white-space: pre;">	</span>sql_query($sql);</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">// 아이콘 업로드</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">// 회원 아이콘</p><p style="font-size: 14.6667px;">$mb_dir = G5_DATA_PATH.'/member/'.substr($mb_id,0,2);</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">// 아이콘 삭제</p><p style="font-size: 14.6667px;">if (isset($_POST['del_mb_icon'])) {</p><p style="font-size: 14.6667px;">    @unlink($mb_dir.'/'.$mb_id.'.gif');</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">$msg = "";</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">$mb_icon = '';</p><p style="font-size: 14.6667px;">if(isset($iconfile)) {</p><p style="font-size: 14.6667px;">    if (preg_match("/(\.gif)$/i", $view['file'][0]['file'])) {</p><p style="font-size: 14.6667px;">        // 아이콘 용량이 설정값보다 이하만 업로드 가능</p><p style="font-size: 14.6667px;">        if ($iconsize <= $config['cf_member_icon_size']) {</p><p style="font-size: 14.6667px;">            @mkdir($mb_dir, G5_DIR_PERMISSION);</p><p style="font-size: 14.6667px;">            @chmod($mb_dir, G5_DIR_PERMISSION);</p><p style="font-size: 14.6667px;">            $dest_path = $mb_dir.'/'.$mb_id.'.gif';</p><p style="font-size: 14.6667px;">            copy($iconfile, $dest_path);</p><p style="font-size: 14.6667px;">            chmod($dest_path, G5_FILE_PERMISSION);</p><p style="font-size: 14.6667px;">            if (file_exists($dest_path)) {</p><p style="font-size: 14.6667px;">                //=================================================================\</p><p style="font-size: 14.6667px;">                // 090714</p><p style="font-size: 14.6667px;">                // gif 파일에 악성코드를 심어 업로드 하는 경우를 방지</p><p style="font-size: 14.6667px;">                // 에러메세지는 출력하지 않는다.</p><p style="font-size: 14.6667px;">                //-----------------------------------------------------------------</p><p style="font-size: 14.6667px;">                $size = getimagesize($dest_path);</p><p style="font-size: 14.6667px;">                if ($size[2] != 1) // gif 파일이 아니면 올라간 이미지를 삭제한다.</p><p style="font-size: 14.6667px;">                    @unlink($dest_path);</p><p style="font-size: 14.6667px;">                else</p><p style="font-size: 14.6667px;">                // 아이콘의 폭 또는 높이가 설정값 보다 크다면 이미 업로드 된 아이콘 삭제</p><p style="font-size: 14.6667px;">                if ($size[0] > $config['cf_member_icon_width'] || $size[1] > $config['cf_member_icon_height'])</p><p style="font-size: 14.6667px;">                    @unlink($dest_path);</p><p style="font-size: 14.6667px;">                //=================================================================\</p><p style="font-size: 14.6667px;">            }</p><p style="font-size: 14.6667px;">        } else {</p><p style="font-size: 14.6667px;">            $msg .= '회원아이콘을 '.number_format($config['cf_member_icon_size']).'바이트 이하로 업로드 해주십시오.';</p><p style="font-size: 14.6667px;">        }</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">    } else {</p><p style="font-size: 14.6667px;">        $msg .= $iconfile.'은(는) gif 파일이 아닙니다.';</p><p style="font-size: 14.6667px;">    }</p><p style="font-size: 14.6667px;">}</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">alert("회원아이콘을 구매, 변경했습니다.\\n\\n".$msg_point."\\n\\n변경된 아이콘은 마이 페이지에서 확인할 수 있습니다.\\n\\n(서버 상태에 따라서 변경이 늦어질 수 있습니다.)");</p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;"> </p><p style="font-size: 14.6667px;">?></p><p style="font-size: 14.6667px;">

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트

일단 아이콘파일의 용량과 관리자페이지 환경설정의 회원아이콘 용량을 확인해보시기 바랍니다.

 

아이콘파일 용량이 설정된 회원아이콘 용량보다 클 가능성이 있어 보입니다. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

해날
8년 전
아 사실 좀 큰 아이콘입니다. 자작아이콘, 그래서 인지 싶습니다. 되다 안되다가 하는거 보면 된다는 얘긴데 용량을 늘려서 한번 진행해봐야 겠습니다. 해결되면 멘트 남기겠습니다. 감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인