LINUX.ORG.RU

[PHP] Отдавать изображение скриптом


1

0

Добрый день.

Впервые столкнулся со странностями с сабжем. Пытаюсь отдать картинку скриптом, и что я для этого делаю:

$image = imagecreatefromjpeg($image);
                
$this->getResponse()->setHttpHeader('Content-type', 'image/jpeg', TRUE);
imagejpeg($image);

Суть в том, что если картинка существует, то он просто отдаёт адрес в виде картинки… как и положено. И Content-type равен image/jpeg

А вот, если картинка существует и скрипт её находит мне отдаётся в формате text/html какая-то херь, кракозябры безсмысленные и между ними затесалась строчка: «CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality»

★★★

header( «Content-type: image/jpeg» );
readfile( $path );

xorik ★★★★★
()

Не выделывайся, отдавай Content-type заголовок штатными средствами.

r_asian ★☆☆
()

И GD в твоём случае совершенно излишне.

r_asian ★☆☆
()

... а потом люди удивляются, почему простенькие на вид скрипты ставят раком сервера и почему на пхп столько говнокода

nu11 ★★★★★
()
Ответ на: комментарий от nu11

> что ты решаешь задачу через задницу. Нормальное решение в первом ответе.

Скорее, просто, ты привык стричь ногти топором.

VirRaa ★★★
() автор топика
Ответ на: комментарий от VirRaa

> Скорее, просто, ты привык стричь ногти топором.

При этом он их таки невозбранно стрижет. Ты же умудрился до полусмерти зарезаться маникюрными ножничками

r_asian ★☆☆
()

маленький вопрос, а зачем тебе это понадобилось? это очень херовый способ. Если уж хочется контроллировать отдачу файлов то юзай nginx+internal redirect от скрипта.

true_admin ★★★★★
()

Зенд выдаст хеадер потом, в показе view, до которого ты скорее всего не доходишь.

просто header() используй как советовали.

roller ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.