utf8로 변경후, 게시판에 썸네일 이미지가 엑박으로 표시가 됩니다 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

utf8로 변경후, 게시판에 썸네일 이미지가 엑박으로 표시가 됩니다 정보

utf8로 변경후, 게시판에 썸네일 이미지가 엑박으로 표시가 됩니다

본문

http://sir.co.kr/bbs/board.php?bo_table=g4_skin&wr_id=95805
위 링크가 현재 사용중인 동영상 스킨입니다.

게정의 문자셋을 euc-kr에서 <utf-8>로 변경했습니다. (계정및 그누보드 일체 변경완료)
그리고 관련 파일및 스킨의 변경은 정상적으로 utf8로 변환을 다했고, 현재 이상이 없습니다.

그런데 .....

어찌된 일인지 , utf8로 변경한후 ... 리스트에 보여지는 스크린샷용 <이미지>를 등록하면
<썸네일>파일이 생성이 제대로 안되는지... 엑박으로 표시가 됩니다.

data/file/해당스킨의 thumb 폴더를 보면 이미지 정상적으로 등록되어있고
리스트화면에서 링크된 썸네일파일명(번호)도 일단 확인은 됩니다.

또한, 기존의 등록된 리스트이미지도...수정모드에서 변경을 하거나 해당 이미지파일만
삭제할경우에도...엑박이 올라오네요

이미지 파일은 정상적으로 등록되는데, 썸네일만 정상적으로 생성이 안되는것인지
어쨋던 이 현상은 euc-kr에서 utf8로 변경한후, 이러한 문제가 발생해서
지식이 짧은 탓에 해결하기가 좀 힘들군요....HELP ME PLEASE~


썸네일 코드와 관련해서 utf8 환경과 맞지 않는게 있는것인지 확인할 방법이 없어서
도움글을 구합니다. 관련파일은


1. 썸네일 생성과 관련된 <write_update_skin.php> 파일 내용
-------------------------------------------------------------------

<? // 리스트화면-섬네일 (첫번째 파일이미지)

$data_path = $g4[path]."/data/file/$bo_table";
$thumb_path = $data_path.'/thumb';

if ($_FILES[bf_file][name][0])
{
    $row = sql_fetch(" select * from $g4[board_file_table] where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_no = '0' ");

    $file = $data_path .'/'. $row[bf_file];
    if (preg_match("/\.(jp[e]?g|gif|png)$/i", $file))
    {
        $size = getimagesize($file);
        if ($size[2] == 1)
            $src = imagecreatefromgif($file);
        else if ($size[2] == 2)
            $src = imagecreatefromjpeg($file);
        else if ($size[2] == 3)
            $src = imagecreatefrompng($file);
        else
            break;

        $rate = $board[bo_1] / $size[0];
        $height = (int)($size[1] * $rate);

        @unlink($thumb_path.'/'.$wr_id);
        $dst = imagecreatetruecolor($board[bo_1], $height);
        imagecopyresampled($dst, $src, 0, 0, 0, 0, $board[bo_1], $height, $size[0], $size[1]);
        imagepng($dst, $thumb_path.'/'.$wr_id, $board[bo_2]);
        chmod($thumb_path.'/'.$wr_id, 0707);
    }
}

?>




2 썸네일 생성과 관련된 <list_skin.php> 파일 내용
-------------------------------------------------------------------
$data_path = $g4[path]."/data/file/$bo_table";
$thumb_path = $data_path.'/thumb';

@mkdir($thumb_path, 0707);
@chmod($thumb_path, 0707);
?>


    <!-- 제목 -->
    <form name="fboardlist" method="post">
    <input type='hidden' name='bo_table' value='<?=$bo_table?>'>
    <input type='hidden' name='sfl'  value='<?=$sfl?>'>
    <input type='hidden' name='stx'  value='<?=$stx?>'>
    <input type='hidden' name='spt'  value='<?=$spt?>'>
    <input type='hidden' name='page' value='<?=$page?>'>
    <input type='hidden' name='sw'  value=''>


<table width='100%' cellspacing="0" cellpadding="0" border=0>

<!-- 목록 -->
<? for ($i=0; $i<count($list); $i++) { ?>

<? // 이미지 관련설정
$no_img = "<img src='$board_skin_path/img/no_image.gif' border=0 width='$board[bo_1]' title='이미지 없음'>";
    $thumb = $thumb_path.'/'.$list[$i][wr_id];
    if (!file_exists($thumb)) {
        $file = $list[$i][file][0][path] .'/'. $list[$i][file][0][file];
        if (preg_match("/\.(jp[e]?g|gif|png)$/i", $file) && file_exists($file)) {
            $size = getimagesize($file);
            if ($size[2] == 1)
                $src = imagecreatefromgif($file);
            else if ($size[2] == 2)
                $src = imagecreatefromjpeg($file);
            else if ($size[2] == 3)
                $src = imagecreatefrompng($file);
            else
                break;

            $rate = $board[bo_1] / $size[0];
            $height = (int)($size[1] * $rate);

            $dst = imagecreatetruecolor($board[bo_1], $height);
            imagecopyresampled($dst, $src, 0, 0, 0, 0, $board[bo_1], $height, $size[0], $size[1]);
            imagepng($dst, $thumb_path.'/'.$list[$i][wr_id], $board[bo_2]);
            chmod($thumb_path.'/'.$list[$i][wr_id], 0606);
        }
    }
   
if (file_exists($thumb))
        $img = "<img src='$thumb' border=0 style='border:2px solid #0f345e' />";
else
$img = $no_img; //썸네일 미등록시, no이미지파일출력
?>



위 해당 스킨을 특별히 수정한것은 없으므로 utf8 or euc-kr환경에서 테스트해보시면 될듯합니다.
꼭 필요한 내용이라서 도움글을 좀 부탁드립니다



<추가글>
확인을 해보니, 일단 썸네일 파일은 생성이 됩니다
그런데 해당 썸네일 파일이 정상적으로 생성이 안된탓인지, 리스트화면에서는 <엑박>으로 표시가 되는군요 -_- ;;

data/file/해당스킨의 thumb 폴더에서 문제가 되는 해당 썸네일 파일을 삭제하면 ..
이미지 썸네일이 없는경우, 보여지도록 되어있는 임시 이미지파일이 보여지는걸로 봐서는
썸네일을 생성시켜주는 코드에 문제가 있는걸로 보여지는데
위 코드를 보시고 도움을 좀 부탁드립니다.
  • 복사

댓글 전체

© SIRSOFT
현재 페이지 제일 처음으로