Воссоздание http запроса с cURL вкл.файлы - PullRequest
0 голосов
/ 08 июня 2010

Я последовательно получаю сообщение об ошибке «не удалось создать предварительные данные» из приведенного ниже кода. То же самое работает на моем локальном тестовом сервере, но на моем общем хосте выдает ошибку.

Пример частипросто для имитации построения массива как с файловыми, так и с не файловыми данными.По сути, все, что я пытаюсь сделать, это перенаправить тот же http-запрос на другой сервер, но у меня так много проблем.

  $count=count($_FILES['photographs']['tmp_name']);

   $file_posts=array('samplesample' => 'ladeda');

   for($i=0;$i<$count;$i++) {
if(!empty($_FILES['photographs']['name'][$i])) {
     $fn = genRandomString();
     $file_posts[$fn] = "@".$_FILES['photographs']['tmp_name'][$i];
    }
   }

   $ch = curl_init();
   curl_setopt($ch,CURLOPT_URL,"http://myurl/wp-content/plugins/autol/rec.php");      
   curl_setopt($ch,CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
   curl_setopt($ch,CURLOPT_HEADER,TRUE);
   curl_setopt($ch,CURLOPT_POST,TRUE);
   curl_setopt($ch,CURLOPT_POSTFIELDS,$file_posts);
   curl_exec($ch);
   print curl_error($ch);
   curl_close($ch);

1 Ответ

0 голосов
/ 08 июня 2010

Быстрый Google показывает это:

http://www.phpfreaks.com/forums/index.php?topic=125783.0

Похоже, вам, вероятно, нужно добавить дополнительную информацию о пути к этой строке:

$file_posts[$fn] = "@".$_FILES['photographs']['tmp_name'][$i];

cURL может не знать, какой каталог искать $_FILES['photographs']['tmp_name'][$i] в.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...