2012-11-04 39 views
1

我試圖做一個簡單的POST。我使用下面的代碼,但是當我查看服務器日誌時,它顯示它正在執行POST而不是GET。任何想法爲什麼?下面的代碼。做有捲曲,但服務器顯示一個POST GET

感謝, 馬克

$url = 'http://www.mydomain.com/api.php'; 
$ch = curl_init(); 
$data = array('name' => 'Foo', 'file' => '@path\file.jpg'); 

    $headers = array(
    'Content-Type: image/jpeg' 
); 


curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_TIMEOUT, '3'); 
curl_setopt($ch, CURLOPT_HEADER  ,1); 

curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 

$result = curl_exec($ch); 
+0

對不起你怎麼想幹什麼?你說你想做一個POST,但那是問題? – jtheman

+0

我不知道爲什麼要設置「內容類型:image/JPEG」當你只發送一個字符串「@path \ file.jpg」。如果您嘗試上傳圖片,則需要將其加載到您的PHP腳本中,並且您將希望使用帖子。 – Codeguy007

回答

0

只要你有行:

curl_setopt($ch, CURLOPT_POST, 1); 

這將是一個POST請求。如果你刪除該行,它將是一個GET請求...然後你需要把數據放在查詢中。

0

我猜你的頭混淆了服務器,如果您需要發佈它的multipart/form-data的,不設置頁眉,並更改數據陣列此,它應該幫助。

$data = array('name' => 'Foo', 'file' => '@path\file.jpg;type=image/jpeg');