모바일에서 찍은 사진 업로드시 사진 방향이 돌아갈 때 해결 방법입니다. > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

모바일에서 찍은 사진 업로드시 사진 방향이 돌아갈 때 해결 방법입니다. 정보

모바일에서 찍은 사진 업로드시 사진 방향이 돌아갈 때 해결 방법입니다.

본문

bbs/write_update.php 에서 아래 내용을 찾아 수정해 보시기 바랍니다.

========================
기존
// 업로드가 안된다면 에러메세지 출력하고 죽어버립니다.
$error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES['bf_file']['error'][$i]);


위의 문구를 찾으셔서 아래의 소스로 덮어씌우기 하시면 됩니다.

        /////////////////////////////////////////////
        // 이 부분부터는 세로사진 정상적으로 출력되도록 회전 수정하는 부분
       
        $exifData = exif_read_data($tmp_file);
        if($exifData['Orientation'] == 6) {
            // 시계방향으로 90도 돌려줘야 정상인데 270도 돌려야 정상적으로 출력됨
            $degree = 270;
        }
        else if($exifData['Orientation'] == 8) {
            // 반시계방향으로 90도 돌려줘야 정상
            $degree = 90;
        }
        else if($exifData['Orientation'] == 3) {
            $degree = 180;
        }
        if($degree) {
            if($exifData[FileType] == 1) {
                $source = imagecreatefromgif($tmp_file);
                $source = imagerotate ($source , $degree, 0);
                imagegif($source, $dest_file);
            }
            else if($exifData[FileType] == 2) {
                $source = imagecreatefromjpeg($tmp_file);
                $source = imagerotate ($source , $degree, 0);
                imagejpeg($source, $dest_file);
            }
            else if($exifData[FileType] == 3) {
                $source = imagecreatefrompng($tmp_file);
                $source = imagerotate ($source , $degree, 0);
                imagepng($source, $dest_file);
            }

            imagedestroy($source);
        }
        else {
            // 업로드가 안된다면 에러메세지 출력하고 죽어버립니다.
            $error_code = move_uploaded_file($tmp_file, $dest_file) or die($_FILES['bf_file']['error'][$i]);
        }
        // 세로사진 처리 끝 //////////////////////////////////////////
추천
1

댓글 4개

전체 3,313 |RSS
그누4 팁자료실 내용 검색

회원로그인

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