如何从web到lead表单返回到salesforce中的给定URL后获得响应


How to get the Response from Web-to-lead Form after returning to the given URL in salesforce

这是我使用的表单代码:

<form name="download_frm" action="https://www.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8" method="POST">
            <input type=hidden name="oid" value="***********">
            <input type=hidden name="retURL" value="http://----/">
            <!--<input type="hidden" name="debug" value="1"> -->
            <p><input type="text" value="" name="name" id="name" maxlength="50" class=""  placeholder="Name"/></p>
            <p><input type="text" value="" name="mail" id="mail" maxlength="50" class="" placeholder="E-mail"/></p>
            <p><input type="text" value="" name="org_name" id="org_name" maxlength="50" class="" placeholder="Organization Name"/></p>
            <p>
            <select name="org_typ" id="org_typ" >
                <option selected="selected">Organization Type</option>
                {if isset($orgtypes)}
                    {foreach $orgtypes as $array}
                        <option value="">{$array->Dev_Type}</option>
                    {/foreach}
                {/if}
            </select>
            </p>
            <p><input type="number" value="" name="phnum" id="phnum" maxlength="50" class="" placeholder="Phone Number(Optional)"/></p>
            <p><input type="text" value="" name="cntry" id="cntry" maxlength="50" class="" placeholder="Country (Optional)"/></p>
            <p><input type="submit" name="submit" id="submit" value="submit form" /></p>
    </form>

提交表单后,它返回到给定的returnURL。但是我想知道表单数据是否存储成功。

请告诉我……

因为Salesforce Web to Lead代码被设计为与所有Web服务器/网站/页面一起工作,所以在常规使用中它不会检索这些信息。无论提交成功还是失败,它都会将访问者重定向到retURL中指定的页面。

如果你想要返回信息,这种行为可能会令人沮丧,但它确实允许web-to-lead几乎在任何地方使用,这就是重点。

您可以在测试中启用调试模式。查看由Salesforce Web to Lead代码生成器生成的原始HTML。这将启用一个中间页面,该页面将显示正在提交的内容。但是,您不希望在生产站点上使用它,因为您的所有客户都会看到这个中间页面。

如果你担心提交被拒绝,这种情况很少见,在任何情况下Salesforce都会给你发一封电子邮件,告诉你提交的表单值以及失败的原因。它通常会因为验证规则而失败(为了解决这个问题,如果您想要填充字段,请使用Page Layout规则而不是验证规则)。

你仍然有几个选择来完成你正在尝试做的事情。

一个是简单地检查Salesforce Leads的提交-但我认为这些信息需要处理,而不仅仅是由人类查看。

在这种情况下,如果你想让你的网站知道表单提交,你的其他选择需要你做一些比使用标准web引导代码更多的事情。

假设你使用的是一个普通的CMS,你可以使用Wordpress插件(Gravity Forms Salesforce Add-On或Wordpress to Lead)或Drupal的Webforms与Salesforce Add-On。

或者,您可以将表单重写为PHP文件(或类似的语言),该文件通过CURL将信息传递给Salesforce,并使用PHP同时执行其他许多操作,例如将其传递给另一个数据库。互联网上有很多——只要谷歌一下"salesforce web引领php curl"

以上所有选项适用于所有版本的Salesforce。如果您有企业及更高级别的API,或者具有专业API,您也可以通过API将信息传递给Salesforce。这将允许您带回诸如Lead ID之类的信息-或将信息传递给其他对象,重复数据删除,upsert等。请记住,这种级别的编码更复杂,并且需要在Salesforce中进行身份验证,所以只有在添加的功能值得额外开销的情况下才使用此选项。