Intereting Posts
Игнорирование апострофов в поисках mysql Перенаправить пользователей IE8 на другую страницу Отладка использования памяти в mod_php Yii множественных отношений Являются mysqli_result :: free и mysqli_stmt :: free_result одинаковыми? Symfony2 / Datatable Bundle – ошибка: установите идентификатор datatable в вашем действии с помощью «setDatatableId», используя идентификатор из вашего представления PHP. Загрузите веб-фотографию в альбом facebook через Graph API. Как решить проблему с разрешением Linux для opencart Сброс соединения с помощью peer: mod_fcgid: ошибка чтения данных с сервера FastCGI Загружайте большие файлы в Amazon S3 напрямую и добавляйте другую дату в базу данных с помощью веб-форм и PHP PHP: Html отправлять электронную почту в формате html Могу ли я определить переменную в условии PHP if? Вход в Symfony2 AJAX Выбор случайного файла из каталога Как изменить значение конкретного ассоциативного массива в PHP?

cURL неправильно загружает изображения

У меня проблема с 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. Я подтвердил с помощью различных тестов, что:

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

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

ТИА,
Бенджи

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

Задавать:

 curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); 

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

 curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_TIMEOUT, 60); 

Может быть, вам не хватает curl_setopt($curl, CURLOPT_BINARYTRANSFER, 1); (наряду с CURLOPT_RETURNTRANSFER , как сказано выше)

Вот пример.