无法在mailchimp api上添加组

时间:2015-04-23 23:43:57

标签: php jquery ajax mailchimp

我有一个ajax表单,正确地将电子邮件地址提交给mailchimp,但我无法弄清楚如何集成组。

这是我的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>    

有没有人知道我失踪了什么或者我在哪里可以找到它?

1 个答案:

答案 0 :(得分:0)

您使用“分组”作为小写字符串,但the documentation显示全部大写字符串。将其更改为全部上限应该为您解决此问题。