2010-04-13 3 views
1

MySQL 테이블에 직원 정보를 추가하는 양식 작업 중 하나의 사진을 파일에 첨부해야합니다. 이것은 콘텐츠 관리 시스템의 일부이며 사용자는 사진 크기를 조정하는 방법을 모르기 때문에 업로드 한 후에 이미지 크기를 조정해야합니다. 이것이 PHP로 어떻게 할 수 있습니까? 미리보기 이미지를 만들려고하지 않고 업로드 한 이미지의 크기를 조정하면됩니다.PHP를 통해 양식과 함께 제출 된 후 사진 크기 조정

답변

1

Verot의 ph upload class을 확인해야합니다. 매우 간단한 코딩을 통해 모든 이미지 수정 옵션을 처리합니다.

예제 코드 :

$foo = new Upload($_FILES['form_field']); 
if ($foo->uploaded) { 
    // save uploaded image with no changes 
    $foo->Process('/home/user/files/'); 
    if ($foo->processed) { 
    echo 'original image copied'; 
    } else { 
    echo 'error : ' . $foo->error; 
    } 
    // save uploaded image with a new name 
    $foo->file_new_name_body = 'foo'; 
    $foo->Process('/home/user/files/'); 
    if ($foo->processed) { 
    echo 'image renamed "foo" copied'; 
    } else { 
    echo 'error : ' . $foo->error; 
    } 
    // save uploaded image with a new name, 
    // resized to 100px wide 
    $foo->file_new_name_body = 'image_resized'; 
    $foo->image_resize = true; 
    $foo->image_convert = gif; 
    $foo->image_x = 100; 
    $foo->image_ratio_y = true; 
    $foo->Process('/home/user/files/'); 
    if ($foo->processed) { 
    echo 'image renamed, resized x=100 
      and converted to GIF'; 
    $foo->Clean(); 
    } else { 
    echo 'error : ' . $foo->error; 
    } 
} 
+0

감사합니다. – Benjamin

1

서버에 PHP 용 GD 라이브러리가 설치되어 있습니까? (그렇지 않다면 설치해 줄 수 있습니까?)

PHP에는 이미지 데이터 작업을위한 다양한 기능이 있습니다.

http://php.net/manual/en/book.image.php

(위를 살펴보고 여전히 정말 어떻게 해야할지 모르는 경우, 알려 주시면 좀 더 정보를 추가 할 것)이다

+0

실제로 GD가 설치되어 있으며이를 처리하는 방법을 알고 싶습니다. 설명서가 다소 무거웠습니다. 이 작업과 관련된 세부 사항은 매우 유용 할 것입니다. – Benjamin

0

쉬운 방법을 timthumb을 사용하십시오. 그것은 사용자 요청에 따라 이미지를 자르고, 확대하고 크기를 조정합니다.

0

대부분의 PHP 설치는 GD 라이브러리 확장 내장되어 있습니다. 사람들이 여기에서 겪는 전형적인 문제는 imagecopyresampled()를 사용하는 대신 분명히 이름이 좋은 imagecopyresized() 함수 (추한 이미지를 생성 할 수 있음)를 사용하려고 시도한다는 것입니다.

서버에 ImageMagick이 설치되어 있으면 이미지 킥을 유도하기 위해 멋진 셸 명령을 작성하여 보통보다 나은 결과를 얻을 수 있습니다.

관련 문제