首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mailchimp : 500错误

Mailchimp : 500错误
EN

Stack Overflow用户
提问于 2017-10-06 10:56:04
回答 1查看 799关注 0票数 0

我正在努力使php代码,将取消订阅/订阅用户与给定的电子邮件。

我找到了这个教程:http://www.sutanaryan.com/2016/10/mailchimp-api-subscribe-or-unsubscribe-user-php-script/

但我还是会犯错误。我认为这个文件有一个问题:

要求(“mailchimp/Mailchimp.php”);

错误日志里什么都没有。

有人能给我建议如何解决它或以不同的方式解决吗?我是初学者,对PHP几乎一无所知。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-10-06 11:36:12

我终于用这个简单的代码解决了它,不需要其他库了!

代码语言:javascript
复制
<?php

function rudr_mailchimp_subscriber_status( $email, $status, $list_id, $api_key, $merge_fields = array('FNAME' => '','LNAME' => '') ){
    $data = array(
        'apikey'        => $api_key,
            'email_address' => $email,
        'status'        => $status,
        'merge_fields'  => $merge_fields
    );
    $mch_api = curl_init(); // initialize cURL connection

    curl_setopt($mch_api, CURLOPT_URL, 'https://' . substr($api_key,strpos($api_key,'-')+1) . '.api.mailchimp.com/3.0/lists/' . $list_id . '/members/' . md5(strtolower($data['email_address'])));
    curl_setopt($mch_api, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Authorization: Basic '.base64_encode( 'user:'.$api_key )));
    curl_setopt($mch_api, CURLOPT_USERAGENT, 'PHP-MCAPI/2.0');
    curl_setopt($mch_api, CURLOPT_RETURNTRANSFER, true); // return the API response
    curl_setopt($mch_api, CURLOPT_CUSTOMREQUEST, 'PUT'); // method PUT
    curl_setopt($mch_api, CURLOPT_TIMEOUT, 10);
    curl_setopt($mch_api, CURLOPT_POST, true);
    curl_setopt($mch_api, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($mch_api, CURLOPT_POSTFIELDS, json_encode($data) ); // send data in json

    $result = curl_exec($mch_api);
    return $result;
}

$email = 'XXXXXXXXXXXXXXXX';
$status = 'subscribed'; // "subscribed" or "unsubscribed" or "cleaned" or "pending"
$list_id = 'XXXXXXXXXX'; // where to get it read above
$api_key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXX'; // where to get it read above
$merge_fields = array('FNAME' => 'Misha','LNAME' => 'Rudrastyh');

rudr_mailchimp_subscriber_status($email, $status, $list_id, $api_key, $merge_fields );


?>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46604172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档