2017-01-08 2 views
1

私は、PHPMailer-masterというプラグインを使用して、my dbに格納されているアドレスにメールを送信しています。
PHP MailerとBCCでメールを送信しよう

私は、文字列内のすべての住所が収集:

$recipients = "[email protected];[email protected];[email protected]"; // OR 
$recipients = "[email protected],[email protected],[email protected]"; 

後、私は、BCCを設定します。

$mail->addBCC($recipients); 

私もメールを取得するために私のメールを設定します。

だから、
$mail->addAddress('[email protected]'); 

、私はエラーはありません...しかし、送信される唯一のメールは、自分自身に1つです。何が問題になることができますか?何が間違っているのかをどのよう

UPDATE

これは私が私の文字列を作成する方法です:あなたはこのようなメールを追加することはできません

while($row = $stmt->fetch()){ 
    $recipients .= $row['email'] . ";"; 
} 

答えて

2

を。 AddBCCのドキュメントは、AddBCC($address, $name = "")のようになります。
私は、foreachループまたは類似のものを使用することをお勧めいたします:

$recipientsArray = explode(";",$recipients); //The delimiter depends on your string that separated the emails 
foreach($recipientsArray as $recipient) { 
    $mail->addBCC($recipient); 
} 

アップデート(あなたの更新について)

アレイを作成する方法は重要ではありません。要点は、PHPMailer関数が呼び出しごとに1つのBCCしか受け付けないことです。それを取得する場合は、次のようにしてください:

while($row = $stmt->fetch()){ 
    $recipients[] = $row["email"]; 
} 
+0

[OK]をクリックします。私は爆発を使用する必要はありません..私は直接配列のメールアドレスを収集することができます:$ stmt-> fetchAll(); –

+0

ちょうど更新しました –

+0

警告:trim()は、パラメータ1が文字列であることを想定しています。 /plugins/PHPMailer-master/class.phpmailer.php //申し訳ありませんでしたが、私が使っていたことです - > fetchAll(); –

関連する問題