cURL неправильно загружает изображения - PullRequest
1 голос
/ 28 января 2010

У меня проблема с cURL. Я загружаю изображения и сохраняю их в папку. Файл, который создает cURL, имеет правильный размер файла, что заставляет меня думать, что заголовки читаются правильно. Но когда я открываю файл в своем браузере или в любом приложении для просмотра изображений, кажется, что на самом деле написано лишь чуть-чуть сверху. Мой код:

function _vancore_curl_savefile($url) {
  $url = str_replace("\"", "", $url);
  $basename = basename($url);
  $basename = str_replace("%20", "_", $basename);
  $var = file_directory_path() . "/van/" . $basename;
  $uvar = "files/van/" . $basename;
  $handle = fopen($var, "w");
  $curl = curl_init($url);
  curl_setopt($curl, CURLOPT_FILE, $handle);
  $result = curl_exec($curl);
  $result2 = $result;
  curl_close($curl);
  fclose($handle);
  return $uvar;
}

file_directory_path() - это функция Drupal (эта функция является частью модуля Drupal и вызывается для каждого файла, который необходимо загрузить), которая возвращает путь к каталогу загрузки файлов Drupal. С помощью различных испытаний я подтвердил, что:

а) $url это то, что должно быть
б) fopen() открывает нужный файл
c) curl_exec() возвращает true после выполнения

Я очень озадачен тем, что здесь происходит не так. У кого-нибудь есть мысли?

ТИА
Бенджи

Ответы [ 4 ]

2 голосов
/ 28 января 2010

Вы не используете библиотеку curl "эмуляция" в модуле curl в Drupal. Ты? Это не всегда работает. Убедитесь, что у вас установлена ​​настоящая библиотека PHP curl.

1 голос
/ 28 января 2010

Попробуйте, если это поможет:

curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_TIMEOUT, 60);
1 голос
/ 28 января 2010

Может быть, вы пропали без вести curl_setopt($curl, CURLOPT_BINARYTRANSFER, 1); (вместе с CURLOPT_RETURNTRANSFER, как сказано выше)

Вот пример .

1 голос
/ 28 января 2010

комплект:

curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...