@User782
Кратко о себе

Как изменить размер картинки и загрузить в папку?

Пытаюсь так загрузить оригинал и измененную картинку. Оригинал загружается, но измененная нет. В чем может быть проблема? Спасибо.
...
$image_tmp = $_FILES['uploadfile']['tmp_name'];
$image_name = $_FILES['uploadfile']['name'];
...
if(move_uploaded_file($image_tmp, $album_dir.$image_rename.$res_type)) {
$filename = $image_tmp;
$percent = 0.5;
header('Content-Type: image/jpeg');
list($width, $height) = getimagesize($filename);
$newwidth = $width * $percent;
$newheight = $height * $percent;
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($filename);
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
move_uploaded_file($thumb, $album_dir);
  • Вопрос задан
  • 44 просмотра
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Использование getimagesize($filename)$filename = $image_tmp;) ПОСЛЕ исполнения move_uploaded_file($image_tmp, ...)... Серьёзно? Вы переносите файл в другую директорию (возможно с переименованием), а потом пытаетесь работать с ним по старому пути/имени $image_tmp?

P.S. move_uploaded_file($thumb, $album_dir); тоже некорректно, так как $thumb - это не файл на диске, это GD-объект в оперативной памяти, и он точно не находится в UPLOAD-директории.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Надо почитать что делает функция imagecopyresized.
а потом почитать, как сохранить результат ее работы в файл
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы