2016-01-06 4 views
0

Я пытаюсь восстановить изображение через imagecreatefromjpeg, переименовать его и также сохранить в другом месте на сервере, но ничего не выводится. Вот что у меня есть:imagecreatefromjpeg php not outputing

$src = 'http://example.com/assets/stock/myimagetoregenerate.jpg'; 

$dest = imagecreatefromjpeg($src); 

imagejpeg($dest,'stock/test.jpg', 100); 

При посещении этой директории изображение не создается.

Я также стараюсь и выводить изображение, а не сохранить его, добавив это в коде выше:

header('Content-Type: image/jpg'); 

Но IMG SRC только текущий URL страницы.

Все разрешения установлены для чтения и записи, поэтому это не проблема.

GD 2.1.0 включен на сервере.

+1

FWIW, вам не нужно * открывать *, а затем * переписывать * изображение в первую очередь; он просто потеряет больше своего качества. Просто * загрузите * файл с 'curl' или таким. – deceze

+1

Я бы просто использовал функцию php 'copy', поскольку она работает с удаленными файлами и т. П. http://php.net/manual/en/function.copy.php – noahdotgansallo

ответ

2

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

Если это файл на вашем собственном сервере, используйте локальные пути, чтобы добраться до него. В противном случае вы делаете сервер должен подключиться к самому себе и получить что-то у него уже есть, что примерно так же ненормальный, как люди в JQuery делать $("#"+$(this).attr("id")) (пожалуйста, пожалуйста не делать это XD)

Если действительно, удаленный файл, вы все еще чрезмерны. Просто используйте:

copy("http://example.com/some/remote/file.jpg","localcopy.jpg"); 

Это будет гораздо быстрее, и вы получите точную копию файла, а не перепакованы версия (которая для JPEG будет более низкое качество каждый раз).

+0

Я попробовал это, но снова ничего не было сохранено в новом каталоге. Есть ли что-то особенное, что мне нужно на сервере, чтобы сделать копию? – danyo

+1

Включить отчет об ошибках. Если ничего не происходит, тогда что-то идет не так. –

+0

Спасибо, я получаю следующее: HTTP-обертка не поддерживает записываемые соединения – danyo

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