Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Скачивание файла с CURL
Форумы портала PHP.SU » » Работа с сетью » Скачивание файла с CURL

Страниц (1): [1]
 

1. aybulat - 13 Октября, 2011 - 12:48:31 - перейти к сообщению
Не могу понять в чем проблема. Скрипт создает выходной файл, но не записывает в него.

PHP:
скопировать код в буфер обмена
  1.  
  2.      $name="11.zip";
  3.      $fp=fopen("./".$name,"w");//создаем пустой файл
  4.      fclose($fp);
  5.      $ch = curl_init ();
  6.      curl_setopt ($ch, CURLOPT_URL, "http://sotmarket.ru/xml_files/11.zip");
  7.      $fp = fopen ("./".$name, "w+");
  8.      curl_setopt ($ch, CURLOPT_FILE, $fp);
  9.      curl_setopt ($ch, CURLOPT_REFERER, "http://sotmarket.ru/xml_files/11.zip");
  10.      curl_setopt ($ch, CURLOPT_AUTOREFERER, 1);
  11.      curl_exec ($ch);
  12.      curl_close ($ch);
  13.      fclose ($fp);
2. LIME - 13 Октября, 2011 - 12:58:29 - перейти к сообщению
3. aybulat - 13 Октября, 2011 - 13:14:25 - перейти к сообщению
Запись с использование указанных функций здесь не причем.
Вот подобный скрипт и он работает
http://forum[dot]codenet[dot]ru/threads/[dot][dot][dot]0%B5%D1%80%D0%B0
4. LIME - 13 Октября, 2011 - 13:25:51 - перейти к сообщению
aybulat пишет:
curl_setopt ($ch, CURLOPT_FILE, $fp);
проглядел сорь
а файл создается?
права на запись есть?
(Добавление)
стоп
fopen("./".$name,"w") это то есть в текущей директории в непонятно какой папке? ))
если в текущей то просто имя файла достаточно
5. aybulat - 13 Октября, 2011 - 13:42:22 - перейти к сообщению
Файл создается(в текущей дериктории), но запись в него не идет.
Где и как проверить права на запись? Как их установить? С атрибутами созданного файла вроде все в порядке(Только чтение - снят).
6. LIME - 13 Октября, 2011 - 13:57:17 - перейти к сообщению
вот
проверил
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $name="11.zip";
  3.      $ch = curl_init ();
  4.      curl_setopt ($ch, CURLOPT_URL, "http://sotmarket.ru/xml_files/11.zip");
  5.      $fp = fopen ($name, "w+");
  6.      curl_setopt ($ch, CURLOPT_FILE, $fp);
  7.      curl_setopt ($ch, CURLOPT_REFERER, "http://sotmarket.ru/xml_files/11.zip");
  8.      curl_setopt ($ch, CURLOPT_AUTOREFERER, 1);
  9.          curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
  10.      curl_exec ($ch);
  11.      curl_close ($ch);
  12.      fclose ($fp);
  13. ?>

(Добавление)
там просто не выдает сразу файл
сначала перенаправляет сам на себя
7. aybulat - 13 Октября, 2011 - 14:01:37 - перейти к сообщению
Спасибо!
Все работает.
8. LIME - 13 Октября, 2011 - 14:02:49 - перейти к сообщению
убрал лишнее

 

Powered by ExBB FM 1.0 RC1