[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сохранить картинку
Сергей
Здравствуйте! Подскажите, пожалуйста, как сохранить картинку на своем хостинге, если известен ее url с помощью php?



Спустя 12 минут, 14 секунд (31.03.2009 - 08:57) twin написал(а):
PHP
<?
$pic file_get_contents("http://phpforum.ru/style_images/1/logo.jpg");
file_put_contents("pic.jpg"$pic);

Спустя 21 минута, 40 секунд (31.03.2009 - 09:19) serba написал(а):
Спасибо!!!

Спустя 10 месяцев, 27 дней, 9 часов, 42 минуты, 39 секунд (28.02.2010 - 20:01) Guest написал(а):
А есть какая нибудь альтернатива для php 4.3.2 ??

Спустя 2 минуты, 21 секунда (28.02.2010 - 20:04) twin написал(а):
    function put_contents($filename, $content, $flag = null)  
{

if(function_exists('file_put_contents'))
return file_put_contents($filename, $content, $flag);

if(!file_exists($filename))
fclose(fopen($filename, "a+t"));

$f = fopen($filename, "r+t");

while(!flock($f, LOCK_EX + LOCK_NB))
sleep(1);

if($flag == FILE_APPEND)
{
fseek($f, 0, SEEK_END);
}
else
{
ftruncate($f, 0);
fseek($f, 0, SEEK_SET);
}

if(is_array($content))
$content = implode('', $content);

fwrite($f, $content );

return fclose($f);
}

Спустя 1 день, 2 часа, 57 минут, 42 секунды (1.03.2010 - 23:01) Guest написал(а):
Спасибо! Скрипт работает ошибок не создает, но проблема в том что файл не создается и не записывается в него если он есть. (php в логах ошибок не пишет)

Может проблема из за использования IIS

Спустя 56 секунд (1.03.2010 - 23:02) Guest написал(а):
<?php
$pic = file_get_contents("http://www.spaceweather.com/images2010/01mar10/midi512_blank.gif");
$filename="aa.gif";
$content=$pic;
function put_contents($filename, $content, $flag = null)
{

if(function_exists('file_put_contents'))
return file_put_contents($filename, $content, $flag);

if(!file_exists($filename))
fclose(fopen($filename, "a+t"));

$f = fopen($filename, "r+t");

while(!flock($f, LOCK_EX + LOCK_NB))
sleep(1);

if($flag == FILE_APPEND)
{
fseek($f, 0, SEEK_END);
}
else
{
ftruncate($f, 0);
fseek($f, 0, SEEK_SET);
}

if(is_array($content))
$content = implode('', $content);

fwrite($f, $content );

return fclose($f);
}


?>

Спустя 18 минут, 35 секунд (1.03.2010 - 23:21) twin написал(а):
А вызов то где?

Спустя 2 минуты, 14 секунд (1.03.2010 - 23:23) twin написал(а):
    function put_contents($filename, $content, $flag = null)  
{

if(function_exists('file_put_contents'))
return file_put_contents($filename, $content, $flag);

if(!file_exists($filename))
fclose(fopen($filename, "a+t"));

$f = fopen($filename, "r+t");

while(!flock($f, LOCK_EX + LOCK_NB))
sleep(1);

if($flag == FILE_APPEND)
{
fseek($f, 0, SEEK_END);
}
else
{
ftruncate($f, 0);
fseek($f, 0, SEEK_SET);
}

if(is_array($content))
$content = implode('', $content);

fwrite($f, $content );

return fclose($f);
}

$pic = file_get_contents("http://www.spaceweather.com/images2010/01mar10/midi512_blank.gif");
$filename="aa.gif";
put_contents($filename, $pic);

Спустя 19 часов, 48 минут, 51 секунда (2.03.2010 - 19:12) Guest написал(а):
Столкнулся что php интерпретатор не понимает константу FILE_APPEND.

" PHP Notice: Use of undefined constant FILE_APPEND - assumed 'FILE_APPEND' in c:\inetpub\wwwroot\index.phtml on line 83 "

Поискал в интернете, но так и не понял что это за константа такая, понял что нужно какое-то дополнение к php чтоли.


Спустя 1 час, 57 минут, 47 секунд (2.03.2010 - 21:10) Guest написал(а):
Т.к. моему php не известно про FILE_APPEND, то я пробывал выполнение сначало одного блока if " fseek($f, 0, SEEK_END) " моя картинка aa.gif не изменялась, потом пробывал выполнение только другого блока
{
ftruncate($f, 0);
fseek($f, 0, SEEK_SET);
}
Файл aa.gif изменялся, но не открывался. Размеры скачиваемой картинке и моей аа.gif были почти одинаковы (до кб, но кол-во байт было разное), получается содержимое картинке передается не совсем точно?

Позже ради интереса попробывал скачать таким образом txt файл с сайта.
Кол-во символов с пробелами txt файла который получился у меня (aa.txt) и кол-во символов с пробелами удаленного txt файла были одинаковы, получается как бы потерь нет.

В итоге с txt все нормально, всё скачивается/открывается, проблема с gif только осталась, всё скачивается но не открывается
unsure.gif

Спустя 3 дня, 5 часов, 46 минут, 47 секунд (6.03.2010 - 02:56) skyscs написал(а):
А если file_get_contents и file_exists упорно говорят что картинки нет, хотя сама она собственно есть... Сайт на uCoz, с других пробовал - все норм. Для примера вот - http://interest.ucoz.ru/_ld/19/45829192.jpg

Уже измучан попытками хоть как-то открыть, но пока-что в сотый раз читаю надпись failed to open stream: HTTP request failed! HTTP/1.1 403

Спустя 14 часов, 49 минут, 58 секунд (6.03.2010 - 17:46) Guest написал(а):
Поставил php 4.4.4, проблема с FILE_APPEND исчезла.

Заметил такую вещь, скрипт всетки сохраняет картинки, но не все открываются, некоторые открываются с кубиками полосками и т.п.


Спустя 56 минут, 31 секунда (6.03.2010 - 18:43) Guest написал(а):
С сохранением bmp картинок проблем нет

Спустя 1 год, 12 дней, 3 часа, 31 минута, 36 секунд (18.03.2011 - 22:15) Гость_boberko написал(а):
Цитата (skyscs @ 5.03.2010 - 23:56)
А если file_get_contents и file_exists упорно говорят что картинки нет, хотя сама она собственно есть... Сайт на uCoz, с других пробовал - все норм. Для примера вот - http://interest.ucoz.ru/_ld/19/45829192.jpg

Уже измучан попытками хоть как-то открыть, но пока-что в сотый раз читаю надпись failed to open stream: HTTP request failed! HTTP/1.1 403

Я конечно понимаю, прошло много времени, но всеже.
мне помогло:
@copy($piclink, $rand);
Где $piclink - ссылка на изображение
$rand - папка и имя сохраняемого изображения.

Спустя 3 месяца, 24 дня, 12 часов, 58 минут, 44 секунды (13.07.2011 - 10:13) Liiion911 написал(а):
Долгое время борюсь с этой проблемой, подсказали попробывать библиотеку cUrl, с помощью которой можно полностью воссоздать схему работы браузера и получить долгожданную картинку, примеры кода будут ?

Спустя 1 месяц, 12 дней, 9 часов, 55 минут, 4 секунды (25.08.2011 - 20:08) Guest написал(а):
Помогите!!!я не могу найти куда сохраняются файлы с нета!!!например картинки пишет что нет папки!!!!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.