| |
|
|
| | На удаленном хосте у меня имеется галерея изображений в формате jpg
Я копирую их на свой новый хостинг скриптом:
...
$stpz = "http://oldhost.ru/file.jpg";
$msg = file_get_contents($stpz);
$file = "file.jpg";
$fd = fopen ($file, "w");
fwrite($fd, $msg);
fclose($fd);
...
|
Файлы копируются, я нормально просматриваю их по новым адресам браузером.
Однако, когда доходит дело до получения превивов этих изображений получаю такие ошибки:
Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: gd-jpeg, libjpeg: recoverable error: Invalid SOS parameters for sequential JPEG in /www/... on line 31
Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: '99.jpg' is not a valid JPEG file in /www/...on line 31
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /www/... on line 42
Warning: imagedestroy(): supplied argument is not a valid Image resource in /www/... on line 49
Насколько я понял, это значит что скопировались изображения в ошибочном формате и GDlib не может их обработать.
Что я делаю неправильно, и как скопировать изображения с удаленного хоста в нормальном виде? | |
| |
|
|
| |
|
|
| |
для: loneliness
(06.08.2007 в 21:33)
| | | попробовал это:
<?php
$getfile = 'http://www.ya.ru/logo.gif';
$myfile = file_get_contents($getfile);
$newfile = fopen('c:/yandex.gif' , 'w');
fwrite($newfile , $myfile);
function LoadGif ($imgname)
{
$im = imagecreatefromgif ($imgname); /* Attempt to open */
if (!$im) { /* See if it failed */
$im = imagecreatetruecolor (150, 30); /* Create a blank image */
$bgc = imagecolorallocate ($im, 255, 255, 255);
$tc = imagecolorallocate ($im, 0, 0, 0);
imagefilledrectangle ($im, 0, 0, 150, 30, $bgc);
/* Output an errmsg */
imagestring ($im, 1, 5, 5, "Error loading $imgname", $tc);
}
return $im;
}
LoadGif('c:/yandex.gif');
?>
Работает!)
|
| |
| |
|
|