2010-08-06 2 views
-1

Мне нужен код, который загружает изображение на сервер PHP, а затем отправляет его в браузер.Как загрузить изображение в PHP

Например, я хочу, чтобы sample.php отправил изображение в браузер после его запроса. Другими словами, я хочу создать файл PHP, который действует как прокси для изображения.

+0

Это не реальный вопрос еще. Откуда должен появиться образ? Как вы хотите загрузить его на сервер? И в какой момент вы хотите вернуть его? –

+0

Итак, что-то в стороне от тега 'img' или перенаправления на расположение изображения на сервере? – Tarka

+0

В любом случае, это будет интересно для вас: http://www.php.net/manual/en/features.file-upload.php –

ответ

0

Вы должны использовать

$image = fopen("image.png"); 
Modify the headers(not sure exacly if it's correct) 
headers("Content-type: image/png"); 
And then send the image 
echo fread($image, file_size("image.png")); 
1

почему вы это делаете? Почему вы не доставляете изображение напрямую? если вы пытаетесь отобразить случайное изображение, которое вы можете также просто перенаправить к изображению с помощью

header("Location: address-of-image"); 

для доставки файлов для ваших клиентов с сервера, а не из исходного местоположения вы можете просто сделать. Однако ваши php.ini настройки необходимо, чтобы внешний файл открывается

readfile("http://www.example.com/image.jpg") 

правильные заголовки не требуется, если вы собираетесь выводить изображение в IMG тег, Altough я бы рекомендовал его. вы должны проверить тип файла изображения или в большинстве случаев просто установить заголовок октетного потока, чтобы браузер не принимал неправильный тип, например текст или что-то, и пытался отобразить двоичные данные. сделать это просто сделать больше

header("Content-type: application/octet-stream") 

одна вещь, чтобы рассмотреть может быть установлен в правильные заголовки для кэширования ...

Смежные вопросы