我正在使用他们的包装器类与mailchimp APi集成。我已经在我的mailchimp仪表板中配置了webhook,将获得webhook响应的文件在顶部
if(isset($_POST['type'])){
$yes=$_POST['data']['email'];
$querynewsubscrip="INSERT into newslettersubscrips SET optemail='$yes'";
$resultnewsubscripxx=mysql_query($querynewsubscrip) or die('Query failed: ' . mysql_error());
}这就是我需要捕捉到的来自Mailchimp的响应吗?我假设webhooks通过post发送数据,类型告诉我操作是什么,数据数组包含所有数据。请指点
发布于 2012-08-13 18:59:06
Mailchimp在这里有一个指南:http://apidocs.mailchimp.com/webhooks/downloads/#php和一些示例代码:http://apidocs.mailchimp.com/webhooks/downloads/webhooks.phps
这应该解释了你需要做什么。
发布于 2018-08-23 13:33:51
根据你的代码,当一个合适的MailChimp webhook被触发时,你看起来只是想订阅一个用户。
你所要做的就是检查MailChimp发送的$_POST['type']变量,如果它等于所需的状态,就做一些事情,例如:
if( isset( $_POST['type'] ) && $_POST['type'] == 'subscribe' ) {
$yes=$_POST['data']['email'];
$querynewsubscrip="INSERT into newslettersubscrips SET optemail='$yes'";
$resultnewsubscripxx=mysql_query($querynewsubscrip) or die('Query failed: ' .
mysql_error());
}因此,您的代码中唯一缺少的就是条件中的$_POST['type'] == 'subscribe'。因为如果你没有添加它,所有其他的webhook类型也会连接到你的代码。
有关webhooks的官方MailChimp文档:https://developer.mailchimp.com/documentation/mailchimp/guides/about-webhooks/和教程https://rudrastyh.com/mailchimp-api/webhooks.html#processing-webhooks
https://stackoverflow.com/questions/11585799
复制相似问题