Задать вопрос
Outoverlay
@Outoverlay

Как отправить файл с помощью curl?

Странность, что uploadpost.php печатает суперглобальный массив $_POST: "Array ( [file_box] => @C:/server/images/1.png)"
А суперглобальный массив $_FILES: "array()"

В чем проблема?

$post = array(
    "file_box" => "@C:/server/images/1.png"
);

$ch = curl_init();

// сообщаем куда будет отправлять
curl_setopt($ch, CURLOPT_URL, 'http://test.loc/test/uploadpost.php' );

// файлы и данные будет отправлены
curl_setopt($ch, CURLOPT_POSTFIELDS, $post );

// передаем true или 1 если хотим ждать ответа после запроса
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// включим отладочную информацию
curl_setopt($ch, CURLOPT_VERBOSE, true);

$response = curl_exec( $ch );

echo $response;
  • Вопрос задан
  • 5739 просмотров
Подписаться 3 Оценить 2 комментария
Решения вопроса 1
@IceJOKER
Web/Android developer
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Nc_Soft
if (class_exists('\CURLFile')) {
            curl_setopt($ch, CURLOPT_POSTFIELDS, ['file_box' => new \CURLFile($path)]);
        } else {
            curl_setopt($ch, CURLOPT_POSTFIELDS, ['file_box' => "@$path"]);
        }
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
26 дек. 2024, в 15:04
3000 руб./за проект
26 дек. 2024, в 14:50
2000 руб./за проект
26 дек. 2024, в 14:40
15000 руб./за проект