【问题标题】:Trouble adding groups on mailchimp api在 mailchimp api 上添加组时遇到问题
【发布时间】:2015-07-02 09:31:42
【问题描述】:

我有一个将电子邮件地址正确提交给 mailchimp 的 ajax 表单,但我不知道如何整合群组。

这是我的 submit.php 代码:

<?php header("HTTP/1.1 200 OK");
if ((isset($_POST['email'])) && (strlen(trim($_POST['email'])) > 0)) 
$email = trim(stripslashes(strip_tags($_POST['email'])));
else
$email = '';
// download from http://apidocs.mailchimp.com/api/downloads/
require_once 'MCAPI.class.php';
$apikey = 'my-key';
$listId = 'my-list-id';
$apiUrl = 'http://api.mailchimp.com/2.0/';
// create a new api object
$api = new MCAPI($apikey);

// Interest Groups
$merge_vars = array(
'groupings' => array(
    array(
        'name' => "How often?", 
        'groups' => array("subscribe for weekly inspiration","subscribe for daily inspiration")
    )
  )
);


if($email !== '') {
$return_value = $api->listSubscribe( $listId, $email, $merge_vars );
// check for error code
if ($api->errorCode){
echo "<p>Error: $api->errorCode, $api->errorMessage</p>";
} else {
  echo '<p>Well hello there!</p>';
  }
 }
?>

这是我的 html ajax 表单:

<div id="form-container">
  <label for="email-address">Email address</label>
  <input type="email" id="email-address" name="email-address"  placeholder="Please enter your email." value="">   

<div id="interestTable">
    <div id="mergeRow-100-1" class="mergeRow dojoDndItem mergeRow-interests-checkboxes">
        <label>How often?</label>
        <div class="field-group groups">
            <ul class="interestgroup_field checkbox-group"> 
            <li class="below12"> <label class="checkbox" for="group_1"><input type="checkbox" id="group_1" name="group[1][1]" value="1"  class="av-checkbox"><span>subscribe for weekly inspiration</span> </label> </li>
            <li class="below12"> <label class="checkbox" for="group_2"><input type="checkbox" id="group_2" name="group[1][2]" value="1"  class="av-checkbox"><span>subscribe for daily inspiration</span> </label> </li> 
            </ul>
        </div>
    </div>

</div>

  <!-- for bots -->
  <div style="position: absolute; left: -6000px;"><input type="text" id="extra-info" name="extra-info" tabindex="-1" value=""></div>
  <button type="button" name="subscribe" id="subscribe">Submit</button>                            
</div>

 <script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>

<script>
  jQuery("#subscribe").click(function() {
  var email = jQuery("#email-address").val();
  var other_text = jQuery("#extra-info").val();
  // don't send if we have other text
  if(other_text === '') {
    if(email !== '')
      jQuery.ajax({
        type: "POST",
        async: true,
        data: { 
            email: email
            },
        url: "submit.php",
        dataType: "html",
        success: function (data)
          { jQuery("#form-container").html(data); },
        error: function (err)
          { alert(err.responseText);}
      });
  }
  });  
</script>    

有谁知道我错过了什么或者我可以在哪里找到答案?

【问题讨论】:

    标签: php jquery ajax mailchimp


    【解决方案1】:

    您使用 'groupings' 作为小写字符串,但 the documentation 显示全大写字符串。将其更改为全部大写应该可以为您解决此问题。

    【讨论】:

    • 谢谢,皮特!我以为我看到他们将其更改为小写。我正在使用 2.0。
    • 您能否更新问题以获得正确的代码?您上面的代码似乎使用的是 v1.3。
    • 更改了 api url。很抱歉造成混乱!
    • 您似乎仍在使用 v1.3。 MCAPI.class.php 使用 v1.3,而不是 v2.0。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-23
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    • 2019-12-03
    • 1970-01-01
    相关资源
    最近更新 更多