2017-12-04 5 views
-1

コードを修正しましたが、私は解決策に近づいていますが、まだエラーが発生していると思います。APIを使用してMailChimpリストにメンバーを追加しようとするとエラーが発生する

public function onPluginsInitialized() 
    { 
     $this->add_member(); 
    } 

public function add_member() { 
    require __DIR__.'/vendor/autoload.php'; 

    $url = 'url'; 
    $api_key = 'api_key'; 
    $list_id = 'list_id'; 

    $client = new \GuzzleHttp\Client(); 

    $result = $client->request('POST', $url.'lists/'.$list_id.'/members', [ 
     'headers' => [ 
      'Authorization' => 'apikey '.$api_key, 
      'json' => [ 
       'email_address' => $_POST['email'], 
       'email_type' => 'html', 
       'status'  => 'subscribed' 
      ] 
     ], 
     'verify' => false, 
     'debug' => false 
    ]); 
} 

ここで私が取得していますエラー:

:私は電子メールを定義しなければならない「未定義のインデックスのメール」?どのようにフォームからそれをキャッチする?

私はthis exampleに従いました。しかし、私の構文は異なります。私は、Guzzleを使用して、GRAVのプラグインを作成しようとしているという事実によって、私の構文の理由が決まると付け加えます。

+1

ここにあなたの質問を投稿してください。[codereview.stackexchange.com] –

+0

「何が問題なのですか」ではなく、どんな問題があるのか​​をもっと詳しく知る必要があります。あなたは何を期待していますか、何が起こっている/起こっていないのですか?何かエラーがありますか?等。 –

+0

また、エスケープされていない '$ _POST'値を送信しないように本当に、本当に、**本当に**お勧めします。あなたはそうすることによって、傷つく世界のために自分自身を設定しています。 –

答えて

0

OK、私はついにそれを分類しました。他の誰かがそれで苦労している場合は、私は答えを投稿しています。

'headers' => [ 
      'Authorization' => 'apikey '.$api_key, 
], 
'json' => [ 
     'email_address' => $_POST['email'], 
     'email_type' => 'html', 
     'status'  => 'subscribed' 
] 

基本的に 'json'配列は 'ヘッダー'にあってはなりません。また、 'debug'と 'verify'を削除しました。

関連する問題