2016-04-18 8 views
1

を追加することはできませんが、画像が追加されません。は、私がイメージWebサービスPrestaShopの

これは私のコードです:

function addImage($idProduct) 
     { 

      $key = 'XXXXXXXXXXXXXXXXXXX'; 
      $url = "http://192.168.1.81/api/images/products/".$idProduct; 
      $image_path = 'image2.jpg'; 

      $ch = curl_init(); 
      curl_setopt($ch, CURLOPT_URL, $url); 
      curl_setopt($ch, CURLOPT_POST, true); 
      curl_setopt($ch, CURLOPT_USERPWD, $key); 
      curl_setopt($ch, CURLOPT_POSTFIELDS, array('image' => '@'.$image_path.';type=image/jpg')); 
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
      $result = curl_exec($ch); 
      curl_close($ch); 

      echo '<h2>Image Added</h2>'; 

     } 

PrestaShopのWebサービスのAPIが認証を求め続けるので、私はまた、PSWebServiceLibrary.phpに変更を加えました。これは私がコードPrestashop Web Service API keeps asking for authenticationを得たリンクです。

これは私が追加されたコードです:

 $url .= '&ws_key=' . $this->key; 

問題は、私はPSWebServiceLibrary.phpにその変更をした前の画像を追加するためのコードが動作していたということであり、私はそれを解決する方法がわかりません。 私は任意の助けが理解されるであろうPrestaShopの1.6.1.5

を使用しています。

おはようございます!

答えて

2

私はそれが唯一の欠落だと思う?あなたのURLに。

私はあなたの$のURLロジックに従っている場合、結果は一例によるID 1234567の製品になります:あなたが必要 http://192.168.1.81/api/images/products/1234567?ws_key=ZOEJFD3429JD209AZJX0DJF20

:だからあなたのサーバーは、このURLを待つhttp://192.168.1.81/api/images/products/1234567&ws_key=ZOEJFD3429JD209AZJX0DJF20

はGETパラメータとしてws_key hanldeしますこれを追加する "?"あなたの終わりに、このようなURL:

ますcurl_setopt($ chを、CURLOPT_POSTFIELDS、配列( 'イメージ':私にとって

$url = "http://192.168.1.81/api/images/products/".$idProduct."?"; 

よろしく、

TGA

+0

これはうまくいきませんが、お返事ありがとうございます! –

+0

私は最後の2日間のソリューションを探していたし、チャームのような作品!ありがとう、+1私の側から –

1

すると、このように動作します=> curl_file_create($ image_path)));

+0

ありがとう! – vosicz

関連する問題