【问题标题】:How can I post data to mailchimp list through my page如何通过我的页面将数据发布到 mailchimp 列表
【发布时间】:2017-11-24 02:49:31
【问题描述】:

我的网页上有一个简报弹出窗口,其中包含三个字段:电子邮件、出生月份和出生日期。因此,如果用户填写这些数据并单击提交,我希望将这些数据写入 mailchimp 列表。 有什么办法可以做到吗?

谢谢

【问题讨论】:

  • 您应该考虑添加一些代码,说明您是如何实现 API 的。没有任何信息,没有人可以帮助你。

标签: php mailchimp mailchimp-api-v3.0


【解决方案1】:

试试这个:

function syncMailchimp($data) { 
    $apiKey = 'your api key';
    $listId = 'your list id';

    $memberId = md5(strtolower($data['email']));
    $dataCenter = substr($apiKey,strpos($apiKey,'-')+1);
    $url = 'https://' . $dataCenter . '.api.mailchimp.com/3.0/lists/' . $listId . '/members/' . $memberId;

    $json = json_encode([
        'email_address' => $data['email'],
        'status'        => $data['status'], // "subscribed","unsubscribed","cleaned","pending"
        'merge_fields'  => [
            'FNAME'     => $data['firstname'],  // You can add your fields here
            'LNAME'     => $data['lastname'],
            'DOB'       => 'mm/dd',  // Add your date of birth here in mm/dd format
        ]
    ]);

    $ch = curl_init($url);

    curl_setopt($ch, CURLOPT_USERPWD, 'user:' . $apiKey);
    curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $json);                                                                                                                 

    $result = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);

    return $httpCode;
}

【讨论】:

  • 函数syuncMail($data)中的$data参数是什么?
  • 无功能也可以使用。在这种情况下,只需使用 $_POST 而不是 $data
  • 我的表单就像 echo $this->getFormAction()。所以我会把你的 sn-p 放在这个函数里面,并作为一个参数放在里面我会这样说: $this->getFormActionUrl ($_POST) ??
  • 我遇到了一个奇怪的错误:当我尝试注册为新客户时,“立即注册”按钮下方有一个复选框,上面写着“订阅我们的时事通讯”。如果我选中了复选框并单击注册,我会收到此错误:“找不到 Api 调用的资源:lists//members/c07a81da48152b494b8ee673c7e7acc3 - 找不到请求的资源。”我希望在注册时也能注册到邮寄黑猩猩名单。那么知道这个错误是什么吗?谢谢
  • 必须通过“状态”字段传递什么?如果我通过订阅..用户已经订阅...这不是 mailchimp 标准..如果我通过“待定”没有任何反应,我在数据中心看不到它...如果我什么都不通过,我们会得到一个错误..我们需要像“新”这样的东西来表明这个用户仍然必须点击他的激活链接。我们如何自动发送激活邮件?
猜你喜欢
  • 2015-09-29
  • 2016-04-19
  • 2013-11-18
  • 2018-10-14
  • 2020-11-01
  • 2012-09-03
  • 1970-01-01
  • 2018-06-20
  • 2015-05-05
相关资源
最近更新 更多