Страница 1 из 1

curl post file

Добавлено: 2011-06-23 18:01:53
xaker1
Здравствуйте. Имеется задача передать 3 файла в массиве (из php скрипта на удаленный сервер post запросом).
Вроде все легко,

Код: Выделить всё

$file_to_upload = array('file[]'=>"@./file1",'file[]'=>"@./file2",'file[]'=>"@./file3");
$ch = curl_init();   
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);   
curl_setopt($ch, CURLOPT_URL, 'http://remote.server/get.php');   
curl_setopt($ch, CURLOPT_POST,1);   
curl_setopt($ch, CURLOPT_POSTFIELDS, $file_to_upload);   
$result = curl_exec($ch);
Но особенность принимающей системы в том, что все элементы массива должны иметь имя file.
Как реализовать?

Код: Выделить всё

$file_to_upload = array('file'=>"@./file1",'file'=>"@./file2",'file'=>"@./file3");
скорей всего передаст только file3

Re: curl post file

Добавлено: 2011-06-23 18:02:11
xaker1
p.s. php

Re: curl post file

Добавлено: 2011-06-24 21:38:43
Alex Keda
тремя разными запросами - не?

Re: curl post file

Добавлено: 2011-06-24 21:58:00
xaker1
Увы...
Типа массив такой

Re: curl post file

Добавлено: 2011-06-25 10:07:45
Alex Keda
элементы массива не могут иметь одинаковые имена, вроде...
--
аффтары принимающей стороны - что рекомендуют?

Re: curl post file

Добавлено: 2011-06-25 12:26:51
xaker1
Да ниче они не рекомендуют. Показали пример, что такое возможно и все (правда не на файлах, но тем не менее, и на файлах у них работает).

Re: curl post file

Добавлено: 2014-08-21 7:30:57
tiuman
КАК решить то эту проблему??? у меня такая же беда правда не файлы с одинаковыми индексами надо передать а текст....

Re: curl post file

Добавлено: 2014-08-21 7:59:33
Alex Keda
xaker1 писал(а):Да ниче они не рекомендуют. Показали пример, что такое возможно и все (правда не на файлах, но тем не менее, и на файлах у них работает).
кстати - такое действительно возможно.
на переменных. сходи в биллинг и посмотри как в статистике передаются переменные.
там одинаовые имена, но, оканчивющиеся на []
и это воспринимается как массив, при приёме. и работает.

Re: curl post file

Добавлено: 2014-11-19 21:29:07
zg
xaker1, тут не нужен CURL, вот пример того, что нужно http://php.net/manual/en/context.http.php , Example #1

В переменную $postdata можно положить любой текст, необязательно массив пхп.