Всем привет, Потребовалась загрузка файла с помощью cURL на сервер. По гайдам интернет-бойцов написал в отправителе так: Код (PHP): <?php $ch = curl_init(); $post_data = array ( 'name' => 'MyName.txt', 'file' => '@/var/www/example.txt' ); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_URL, 'http://192.168.56.101/loader.php'); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); curl_exec($ch); ?> А вот код файла-получателя: Код (PHP): <?php print_r($_FILES); print_r($_POST); ?> И вот что получаю на выходе: Array ( ) Array ( [name] => MyName.txt [file] => @/var/www/vk/cookiejar.txt ) И никак не могу понять, чего он в файлах не отображается. Может, настройки какие-то проверить? Прилагаю скрин с куском о cURL из phpinfo()
Добавил еще Код (Text): <?php $f = fopen('out.txt', 'w'); curl_setopt($ch, CURLOPT_STDERR, $f); curl_setopt($ch, CURLOPT_VERBOSE, true); ?> а там мультипарт есть: Добавлено спустя 15 минут 20 секунд: Оказалось, что имею установленной версию php 5.6.*, и теперь файлы нужно отправлять по-модному: Код (PHP): <?php $ch = curl_init(); $file = new CURLFile('/path/to/my/shitty/file'); $post_data = array ( 'name' => 'MyName.txt', 'file' => $file ); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_URL, 'http://192.168.56.101/vk/loader.php'); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); curl_exec($ch); ?> Но по-моему, можно установить еще какую-то CURLOPT_* директиву, чтобы можно было постаринке с собачкой шпарить, я не разобрался.