топ

// Подключаем класс-контейнер содержимого файла
include «ofile.class.php»;
// Подключаем класс для формирования тела POST запроса
include «bodypost.class.php»;

// Генерируем уникальную строку для разделения частей POST запроса
$delimiter = ‘————-‘.uniqid();

// Формируем объект oFile содержащий файл
$file = new oFile(‘sample.txt’, ‘text/plain’, ‘Content file’);

// Формируем тело POST запроса
$post = BodyPost::Get(array(‘field’=>’text’, ‘file’=>$file), $delimiter);

// Инициализируем CURL
$ch = curl_init();

// Указываем на какой ресурс передаем файл
curl_setopt($ch, CURLOPT_URL, ‘http://server/upload/’);
// Указываем, что будет осуществляться POST запрос
curl_setopt($ch, CURLOPT_POST, 1);
// Передаем тело POST запроса
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

/* Указываем дополнительные данные для заголовка:
Content-Type — тип содержимого,
boundary — разделитель и
Content-Length — длина тела сообщения */
curl_setopt($ch, CURLOPT_HTTPHEADER, array(‘Content-Type: multipart/form-data; boundary=’ . $delimiter,
‘Content-Length: ‘ . strlen($post)));

// Отправляем POST запрос на удаленный Web сервер
curl_exec($ch);

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *