我使用PHP(WAMPServer)接收表單提交,然後CURL將文件傳遞到另一個服務器進行處理。PHP&CURL不發送文件,即使用@作爲前綴
下面是一個例子來說明(而不是實際的代碼):
$data = array(
'file' => '@'.$_FILES['key']['tmp_name']
);
下面是我使用的是什麼捲曲......和我貼我注意到,我仍然有http_build_query()
代碼我的代碼......所以,這一定是問題所在。
$CURL = curl_init();
curl_setopt($CURL, CURLOPT_URL, $operation['callback']);
$query_string = http_build_query($arguments);
curl_setopt($CURL, CURLOPT_POSTFIELDS, $query_string);
curl_setopt($CURL, CURLOPT_POST, TRUE);
curl_setopt($CURL, CURLOPT_RETURNTRANSFER, TRUE);
$result = curl_exec($CURL);
curl_close($CURL);
return $result;
我的問題是最後一個服務器沒有收到文件。相反,數據作爲鍵值對傳遞。
$_POST contains 'file' => '@c:\wamp\tmp\xyz.tmp'
我更喜歡的是文件被傳輸,$ _FILES有關於它的信息。
嘗試發送' '名'=>「xyz''也很有價值。你可以把實際的代碼? – safarov 2012-04-11 15:25:26
我們需要查看其餘的捲曲代碼。 – webbiedave 2012-04-11 15:26:00