Как сделать, чтобы загружались и png рисунки?

Рейтинг: 0Ответов: 1Опубликовано: 20.01.2015
// Проверяем кнопочку "Submit"
if (isset($_POST['mySubmit'])) {

    // Только JPG/JPEG
    if ($_FILES["myImage"]["type"] == "image/jpeg" )

        {

        // Установить нужные размеры
        $max_width = 1000;
        $max_height = 415;

        // Создать изображение
        $image_source = imagecreatefromjpeg($_FILES["myImage"]["tmp_name"]);
        $remote_file = 'foto/' . $_FILES["myImage"]["name"];
        imagejpeg($image_source, $remote_file, 100);

        // Узнать размеры оригинала
        list($original_width, $original_height) = getimagesize($remote_file);

        // Сейчас будем выяснять что конкретно надо отрезать...
        $temp_width = $original_height / $max_height * $max_width;
        $temp_height = $original_width / $max_width * $max_height;

        // Это будет или ширина,
        if ($temp_width < $original_width) {
            $myWidth = $temp_width;
            $myHeight = $original_height;
        }
        // Или высота.
        if ($temp_height < $original_height) {
            $myWidth = $original_width;
            $myHeight = $temp_height;
        }

        // Создаем изображению, уже с новымы размерамы
        $new_image = imagecreatetruecolor($max_width, $max_height);
        $image_source = imagecreatefromjpeg($remote_file);
        imagecopyresampled ($new_image, $image_source, 0, 0, 0, 0, $max_width, $max_height, $myWidth, $myHeight);
        imagejpeg($new_image,$remote_file,100);

        // Все, избавляемся от мусора....
        imagedestroy($new_image);
        imagedestroy($image_source);

        echo "Изображение было успешно загружено!";
    }
    else {
        // Если фаил не загрузили
       echo "Произошла ошибка при загрузке изображения";
    }
}

Ответы

▲ 2Принят

Добавить в условие:

if ($_FILES["myImage"]["type"] == "image/jpeg" || $_FILES["myImage"]["type"] == "image/png" )