首页 > 解决方案 > 从 curl 到 Salesforce 的 Ninja Form 什么都不返回

问题描述

我正在集成忍者表单以在 Salesforce 上发布数据。

我的代码如下。我已经应用了忍者表单钩子并在 WordPress 主题 functions.php 文件中执行代码。

@$ch = curl_init();
    $form = [];

    if ($ch !== false) { 

    $form = [
        'oid'=> '*******',
        'retURL' => 'http://',
        'first_name'=> (!empty($first_name) ? trim($first_name) : ''),
        'last_name'=> (!empty($last_name) ? trim($last_name) : ''),
        'email'=> (!empty($email) ? trim($email) : ''),

    ];

    $options = array(
        CURLOPT_URL            => "https://webto.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8",
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HEADER         => true,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_ENCODING       => "",
        CURLOPT_AUTOREFERER    => true,
        CURLOPT_CONNECTTIMEOUT => 120,
        CURLOPT_TIMEOUT        => 120,
        CURLOPT_MAXREDIRS      => 10,
        CURLOPT_POSTFIELDS     => $form
    );
    curl_setopt_array( $ch, $options );
    $server_output = curl_exec($ch);
    $response_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close ($ch);

    echo "<pre>"; print_r($server_output ); echo "</pre>";  // It returns nothing. Why ??

    }

谁能帮我这段代码有什么问题。因为当我做 print_r 它什么都不返回。并且没有数据会发送给销售人员。

任何帮助将不胜感激。

谢谢

标签: phpwordpresscurlsalesforceninja-forms

解决方案


您的代码可能没有任何问题。假设组织 ID 是正确的,并且您正在寻找正确的 SF 组织(产品?沙箱?顺便说一下 - 在这里编辑它是个好主意)。

  1. 请您的 Salesforce 管理员检查潜在客户对象。需要哪些字段,有哪些验证规则,甚至可能是触发器。
  2. 尝试使用来自 SF UI 而非您的表单的相同数据创建潜在客户
  3. 尝试在 Postman、SoapUI 或类似工具中发出相同的 POST 请求。

可能是 SF 配置问题。目标组织中可能未启用在线潜在客户功能。或者,也许该组织的存储使用率为 100%;)您需要进行更多试验,请 SF 管理员/开发人员提供帮助。


推荐阅读