Загрузка удаленной картинки

Статус
В этой теме нельзя размещать новые ответы.

allforweb

Новичок
Загрузка удаленной картинки

Вопрос по загрузке удаленной картинки

Адрес картинки я загоняю в переменную $urlimage
Далее скачиваю картинку и даю ей новое имя, а вот как указать каталог для загрузки не знаю

PHP:
$finale = file_get_contents($urlimage);
        copy ($urlimage, $dir);
		$image = $name.substr(md5(time()), 11).".jpg";
$urlimage – адрес удаленной картинки
$dir – адрес директории для загрузки картинки, но тут похоже имя файла для перезаписи используется.

Как правильно скачать картинку, загрузить ее в каталог на своем сервере с новым именем уже?
 

pilot911

Новичок
может быть

PHP:
file_put_contents( 
$name.substr(md5(time()), 11).".jpg",
file_get_contents($urlimage)
);
 

Вурдалак

Продвинутый новичок
Говнокод-говнокод...

PHP:
$filename = $name.substr(md5(time()), 11).".jpg";
copy($urlimage, $dir . '/' . $filename);
 

allforweb

Новичок
Автор оригинала: Вурдалак
Говнокод-говнокод...

PHP:
$filename = $name.substr(md5(time()), 11).".jpg";
copy($urlimage, $dir . '/' . $filename);
Все работает, но только когда пишется полный путь типа home/localhost/www и т.д.
Если писать коротко то ни одна вариаций не помогает.
 

Ragazzo

TDD interested
allforweb
что-то много твоих тем по поводу как 1 прибавить к 2....погуглить не судьба...
 

allforweb

Новичок
Ragazzo
Гуглил - там такие же как я советы дают

iceman
Я пока еще "программист", а не программист

-~{}~ 02.10.10 23:53:

Автор оригинала: Вурдалак
Что значит «не работает», б##?
Заработало только грузится в корень сайта, а не в папку uploads
 

Ragazzo

TDD interested
грузится туда же откуда и скрипт исполняется...так и должно быть...в папку uploads грузится из массива $_FILES, ручками сам проставь
 

Вурдалак

Продвинутый новичок
allforweb, значит неправильно указал папку.
http://phpfaq.ru/path

Ragazzo, причём тут $_FILES? Тему читал? Ты вроде бы набрал 100 постов. Меняй статус и успокаивайся.
 

Ragazzo

TDD interested
Вурдалак
>>Заработало только грузится в корень сайта, а не в папку uploads
 

allforweb

Новичок
Автор оригинала: Вурдалак
allforweb, значит неправильно указал папку.
http://phpfaq.ru/path
Я читал это и папку указал правильно (вроде) картинки с локальной машины грузятся.

В переменную занес такие данные $dir = ''. MY_HOST .'uploads';
И ранее создал:
define('MY_ROOT', str_replace('\\', '/', $_SERVER['DOCUMENT_ROOT']) .'/work/getimage/');
define('MY_HOST', 'http://'. $_SERVER['HTTP_HOST'] .'/work/getimage/');

И что интересно в ошибке пишет правильный путь к папке и говорит что не может ее найти.
Warning: copy(http://localhost/work/getimage/uploads/photo99255b6300a61e63d4108.jpg) [function.copy]: failed to open stream: HTTP wrapper does not support writeable connections. in C:\home\localhost\www\work\getimage\index.php on line 32

а на строке 32 copy($urlimage, $dir . '/' . $filename);
и не совсем понятно зачем копировать перменную $urlimage - это путь к удаленной картинке.
 

allforweb

Новичок
Автор оригинала: Ragazzo
allow_url_fopen разрешено?
allow_url_fopen = On

-~{}~ 03.10.10 00:44:

Автор оригинала: Вурдалак
allforweb, э, ты вторым аргументом что подставляешь?

Я все понял что там написано, не идиот (вроде как)

Я вывожу в браузере путь так:

PHP:
echo $urlimage;  echo $dir;
И браузер мне пишет, что $dir = http://localhost/work/getimage/uploads т.е. путь правильный.
А когда начинается загрузка картинки то вылазит ошибка:
Warning: copy(http://localhost/work/getimage/uploads/photof4636311595d4d48bede8.jpg) [function.copy]: failed to open stream: HTTP wrapper does not support writeable connections. in C:\home\localhost\www\work\getimage\index.php on line 36

А ошибка на линии 36 не понятно где:
copy($urlimage, $dir . '/' . $filename);
Вроде как все правильно, но в то же время не грузится картинка.

Когда я пишу просто $dir = C:/home/localhost/www/work/getimage/uploads - все грузится нормально.

Меня еще смущает вот эта фраза:
HTTP wrapper does not support writeable connections - на локальной машине разве нужно перезаписывающее соединение?
 

Crys

Двинутый новичок
Вернись на шаг, когда
Заработало только грузится в корень сайта, а не в папку uploads
и покажи реальный код

-~{}~ 02.10.10 23:48:

Я все понял что там написано, не идиот (вроде как)

Я вывожу в браузере путь так:


echo $urlimage; echo $dir;


И браузер мне пишет, что $dir = http://localhost/work/getimage/uploads т.е. путь правильный.
Угу.. Вместо http://localhost укажи http://google.com и удивляйся, почему не работает..
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху