이런 갤러리 게시판이 있다면... > 그누4 질문답변

그누4 질문답변

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

이런 갤러리 게시판이 있다면... 정보

이런 갤러리 게시판이 있다면...

본문

이런 갤러리 게시판이 있다면... 이라는 제목으로 워터마크 사용여부를 사용자가 결정할 수 있는 게시판이 있다면 좋지 않을까? 라는 아이디어 반 질문 반 글을 올렸더니 모르솔자준회원님께서 아래와 같이 대답을 주셨습니다.
 
대~ 충 조건절 하나면 되죠.

if ($wr_1 == 'ok') {
워터마크소스~~~~~~
}
 
 
 
 
근데...그누보드 초보인 저는 대~~충 조건절을 어디다 어떻게 달아야할지 도저히 모르겠습니다. ㅠㅠ
 
* 제가 적용한 스킨은 푸름빠덜님의 스킨입니다.
 
 
.
 
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
//##add060613 이미지합성함수
function waterMark($fileInHD, $wmFile, $transparency = 60 , $jpegQuality = 100, $margin = 5) {
 $wmImg  = imageCreateFromGIF($wmFile);
 $jpegImg = imageCreateFromJPEG($fileInHD);
$wmX=imageSX($jpegImg) - imageSX($wmImg);
$wmY=imageSY($jpegImg) - imageSY($wmImg);
 imageCopyMerge($jpegImg, $wmImg, $wmX, $wmY, 0, 0, imageSX($wmImg), imageSY($wmImg), $transparency);
 ImageJPEG($jpegImg, $fileInHD, $jpegQuality);
}
//##add060613 이미지합성함수
$data_path = $g4[path]."/data/file/$bo_table";
$thumb_path = $data_path.'/thumb';
    $sql=" select * from $g4[board_file_table] where  bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no asc";
    $results = sql_query($sql);
    for ($i=0; $row=sql_fetch_array($results); $i++)  { //~~~~~~~~~~~~~~~~~~~~~~~~~~~
$file = $data_path .'/'. $row[bf_file];

if ($_FILES[bf_file][name][$i]){
waterMark($file,$board_skin_path."/img/logo_mark.gif");  // 요거 추가됨 윈본이미지우측하단에 로고를 붙이자
}
if ($i==0 && $_FILES[bf_file][name][0]){ //#############
    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);
        $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, 0606);
}
} //##########
    }//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
?>
 

댓글 전체

write.skin.php

<?
if ($write[wr_1] == '1') {
$wr_1 = "checked";
} else {
$wr_1 = "";
}
?>
<input type=radio name=wr_1 value="1" <?=$wr_1?>>사용










write_update.head.skin.php

<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
//print_r2($_FILES); exit;


// 워터마크 사용
if ($wr_1 == '1') {

//##add060613 이미지합성함수
function waterMark($fileInHD, $wmFile, $transparency = 90, $jpegQuality = 90, $margin = 5) {
 $wmImg  = imageCreateFromGIF($wmFile);
 $jpegImg = imageCreateFromJPEG($fileInHD);
$wmX=imageSX($jpegImg) - imageSX($wmImg);
$wmY=imageSY($jpegImg) - imageSY($wmImg);
 imageCopyMerge($jpegImg, $wmImg, $wmX, $wmY, 0, 0, imageSX($wmImg), imageSY($wmImg), $transparency);
 ImageJPEG($jpegImg, $fileInHD, $jpegQuality);
}
//##add060613 이미지합성함수


$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, 0606);

waterMark($file,$g4[path]."/data/logo_mark.gif");  // 요거 추가됨 윈본이미지우측하단에 로고를 붙이자

    }

}
}

// 사용하지 않을 때
 else {
$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, 0606);
    }
}
}

?>
모르솔라준회원님께서 가르쳐주신 것처럼 하니까 정말 잘 되네요.
이제 원하는 게시판을 갖게 되었습니다.
정말 정말 감사합니다.
^^
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT