2016-04-07 12 views
2

投稿時にデータをMicrosoft Dynamics CRMに送信するWebページにフォームを実装する必要があります。データは特定のリードに保存する必要があります。Microsoft Dynamics CRMとPHP/JSON

私は、CRMサーバーと通信するためにカールを使用するシンプルなPHPスクリプトを作成しましたが、承認に失敗したことを示すステータスコードは常に401です。

define('MS_CRM_URL', 'https://______.crm.dynamics.com/'); 
define('MS_CRM_USER', '[email protected]'); 
define('MS_CRM_PASS', 'password'); 
$method = '/api/data/v8.0/accounts?$select=name&$top=3'; 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, MS_CRM_URL . $method); 
curl_setopt($ch, CURLOPT_USERPWD, MS_CRM_USER .':'. MS_CRM_PASS); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, array(

)); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Accept' => 'application/json', 
    'OData-MaxVersion' => '4.0', 
    'OData-Version' => '4.0', 
    'Content-Type' => 'application/json', 
)); 

$server_output = curl_exec($ch); 
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 

curl_close($ch); 

$json = array(); 
if ((int)$status_code === 200) { 
    $json = json_decode($server_output); 
} 

echo '<pre>'; 
var_dump($status_code); 
var_dump($json); 
echo '</pre>'; 

$methodの内容は、Microsoftのドキュメントサイトのどこかで見つかった例です。ドキュメンテーションはあまり役に立ちませんでした。

答えて

0

SOAP認証を使用して行うことができます。私は、PHPウェブサイトからDynamics 365にオンラインでデータを送信する必要があるのと同じ要件を持っています。私は下のリンクからソースコードを使用してそれを達成しました:

https://bitbucket.org/nigelheap/msdynamicsphp-master

関連する問題