2013-08-26 74 views
6

我想通過MailChimp API將用戶添加到興趣組。通過MailChimp API將用戶添加到興趣組v2.0

這是我$merge_vars數組:

$merge_vars = array(
    'GROUPINGS' => array(
     0 => array(
      'id' => 17385, // The group list ID 
      'groups' => "Test 123", // A test group, that does exist 
     ) 
    ) 
);    

,這是我如何更新會員:

$update = $mc->lists->updateMember(self::$mainListID, $email, $merge_vars); 

這裏有一個var_dump($merge_vars)

array(1) { 
    ["GROUPINGS"]=> 
    array(1) { 
    [0]=> 
    array(2) { 
     ["id"]=> 
     int(17385) 
     ["groups"]=> 
     string(8) "Test 123" 
    } 
    } 
} 

$email是結構,這裏是$var_dump($email)

array(1) { 
    ["email"]=> 
    string(11) "[email protected]" 
} 

我要失魂落魄,因爲API不返回一個錯誤,似乎一切順利,除了不添加到列表中的用戶的一大難題。

我看過this question,它幫助我獲得了迄今爲止,但它使用的API的版本是1.3,這可能與它有關。

我在做什麼錯?

回答

14

嗯,我想通了。

雖然我可以有發誓我已經嘗試過這種方式...組必須是一個數組,即使是一個組。

我現在代碼:

$merge_vars = array(
    'GROUPINGS'=> array(
     array(
      'id' => 17385, 
      'groups' => array($post['listName']) 
     ) 
    ) 
); 

$mc->lists->updateMember(self::$mainListID, $email, $merge_vars); 

完美的作品。

+0

我堅持這也太 - 但它看起來對我來說,你的問題已經有組作爲一個數組,具有單組內。 – Paul

+1

啊。好的,組條目列表本身不應該是一個數組,它們應該是一個以逗號分隔的列表。我很驚訝這工作。 – Paul

+0

您使用的是哪個版本的API?它可能已經改變。 – Sacha

1

同意@Sanaco

添加這個例子更多的複選框

$option1=$_POST['xxxx']; 
$option2=$_POST['xxxx']; 
$option3=$_POST['xxxx']; 

'GROUPINGS'=> array(
          array(
           'id' => 123456, 
           'groups' => array($option1, $option2, $option3) 
          ) 
         ) 
相關問題