如何使用PHP和CURL将记录添加到表中?

时间:2016-08-25 10:34:05

标签: php curl salesforce

我使用REST API将Joomla表单连接到Salesforce。

我已成功通过身份验证,查询并更新了现有记录。

尝试添加记录时,没有结果。

我的代码是:

<?php

//
//  test add of a Contact
//

$data3 = array ( 'FirstName' => 'John',
                           'LastName' => 'Testing',
                           'Name' => 'John Testing' );

$data3_param = json_encode ($data3, true);

$form->data['data3'] = $data3;

$bearer =  "Authorization : Bearer ".$form->data['access'];

$hdrfields = array();
$hdrfields[] = $bearer;
$hdrfields[] = "Content-Type: application/json";                   

$url = "https://ap4.salesforce.com/services/data/v".$form->data['latestversion'];

$e = "/sobjects/Contact/";

$url2 = $url.$e;

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url2);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, $hdrfields);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, $data3_param);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response3  = curl_exec($ch);
curl_close($ch);

$form->data['response3'] = $response3;

?>

所以此代码与记录更新类似,只是URL中没有记录ID。据我所知,它遵循文档,但显然有一些错误。这三个字段是表中我要添加记录的必填字段。

我希望有人能看到我做错了什么。

谢谢

问题解决了 - 用户错误。道歉。

1 个答案:

答案 0 :(得分:0)

接缝你忘了必填字段 - AccountId。在salesforce中,每个联系人都链接到某个帐户。顺便说一句,'名称'字段不是必需的,它只是在SF中计算为名字和姓氏的串联。