PHP imagejpeg принудительно открыть файл после сохранения

Я пытаюсь сделать простой код для загрузки изображения> изменить его размер> сохранить в каталоге> и показать в браузере после изменения размера.
Проблема в том, что файл сохраняется, но ни одно из моих эхо не работает, и я получил серый фон с информацией о том, что изображение содержит ошибки и не может быть отображено.

Когда для параметра imagejpeg установлено значение imagejpeg ($ imageP, null, 100), изображение отображается на этом сером фоне, но остальная часть страницы отсутствует.

Функция изменения размера:

function resizeProportionallyByPx($width, $height, $image)
{
header('Content-Type: image/jpg');
list($widthOriginal, $heightOriginal) = getimagesize($image);
$ratioOriginal = $widthOriginal/$heightOriginal;

if($width/$height > $ratioOriginal){
$width = $height * $ratioOriginal;
}else{
$height = $width * $ratioOriginal;
}

$imageP = imagecreatetruecolor($width, $height);
$imageJ = imagecreatefromjpeg($image);

imagecopyresampled($imageP, $imageJ, 0, 0, 0, 0, $width, $height, $widthOriginal, $heightOriginal);
imagejpeg($imageP, '../imagesResized/demo.jpg', 100);
}

Код:

if (isset($_FILES['imageToUpload']) && isset($_POST['width']) && isset($_POST['height']) && is_numeric($_POST['width']) && is_numeric($_POST['height'])) {

$uploadDir = "../images/";
$uploadFile = $uploadDir . basename($_FILES['imageToUpload']['name']);
$width = $_POST['width'];
$height = $_POST['height'];

if(move_uploaded_file($_FILES['imageToUpload']['tmp_name'], $uploadFile))
{
$size = formatSizeUnits($_FILES['imageToUpload']['size']);
$image = $_FILES["imageToUpload"]["name"];
$imageOriginalPath = "../images/" . $image;

resizeProportionallyByPx($width, $height, $imageOriginalPath);
$imageResizedPath = '../imagesResized/demo.jpg';

echo "Uploaded file info:" . '<br />'
. "File name: " . $_FILES['imageToUpload']['name'] . " is valid and was successfully uploaded.<br />". " File type: " . $_FILES['imageToUpload']['type'] . '<br />'
. " File size: " . $size . '<br />'
. " Temp file: " . $_FILES["imageToUpload"]["tmp_name"] . '<br />'
. "<img src=" . "$imageOriginalPath><br />". "Image after resize: <br />". "<img src=$imageResizedPath>" . "<br />";

}
else
{
echo "Possible file upload attack, upload has failed." . "Error: " . $_FILES['imageToUpload']['error'];
}
}

chmod и chow настроены.
Надеюсь, кто-нибудь может помочь мне с моим первым вопросом, ура.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]