Veröffentlicht 12. Dezember 201212 j Hallo Forengemeinde, ich versuche E-Mails an mehrere Empfänger über Bcc zu senden. Leider funktioniert dies nicht und die Logfiles schweigen sich in der Beziehung auch aus. Oops, es liegt warscheinlich am Mail-Header. Habe gerade mit dem Thunderbird getestet und da gehen die Mails auch an BCC's. Die Adressen für Bcc habe ich in einem Array, welches ich dann zu einem String zusammenbaue. Jedes Element ist dabei mit einem Komma vom Anderen getrennt. Beispiel: Bcc: Ziel1 <ziel@domain.tld>,ziel2 <ziel2@domain.tld>, ...etc. Hatte von Euch jemand das gleiche Problem und eine Lösung gefunden? Bearbeitet 12. Dezember 201212 j von uenetz
12. Dezember 201212 j Autor Das ist jetzt nicht ganz einfach. Aber ich denke das relevante Fragment sollte reichen. $send_params['headers'] = array( 'From: Absender <absender@absender.tld>', // Headers 'To: empfaenger@ziel.tld', 'Reply-To: undesirable-response@absender.tld', 'Errors-To: postmaster@absender.tld', 'Subject: Allgemeine Information', 'Bcc: ' . implode(',', $this->CreateBcc()), /* CreateBcc liefert ein Array mit Adresse. Beispiel: array("Ziel1 <ziel1@xxx.tld>", "Ziel1 <ziel1@xxx.tld>"); 'X-Mailer: PHP/' . phpversion(), 'Content-Type: text/html, charset=ISO-8859-1' ); $send_params['from'] = 'absender@domain.tld'; // This is used as in the MAIL FROM: cmd $send_params['body'] = $cHTML; /* diese Variable beinhaltet den Mail-Body */ $send_params['recipients'] = array('absender@domain.tld'); if(is_object($smtp = smtp::connect($params)) AND $smtp->send($send_params)) { $x = 0; } [/PHP] Bearbeitet 12. Dezember 201212 j von uenetz
12. Dezember 201212 j Funktioniert es mit wenigen Adresse im BCC? Kommen die BCC-Mails überhaupt am MTA an? Werden die E-Mails mit der mail()-Funktion versendet oder mit was eigenem gebauten?
12. Dezember 201212 j Autor Mails mit Bcc über den MTA zu verschicken funktioniert (getestet mit dem Thunderbird) Versenden über die smtp-Klasse (siehe Codeauszug) funktioniert nicht. Über die Funktion mail() klappt es ebenfalls nicht.
12. Dezember 201212 j Du musst schon mal entsprechende Logauszüge zeigen, denn sonst ist das nur raten
12. Dezember 201212 j Autor Dst ja das große Problem! Ausser dem Logeintrag über das Senden an den Empänger (was tadellos funktioniert) gibt es keine weiteren Meldungen. Keine Meldungen über den Versand an die Bcc - Adressen..
12. Dezember 201212 j Dst ja das große Problem! Ausser dem Logeintrag über das Senden an den Empänger (was tadellos funktioniert) gibt es keine weiteren Meldungen. Keine Meldungen über den Versand an die Bcc - Adressen.. Disclaimer: es ist schon länger her... Also bitte durch Querlesen der RFCs kontrollieren. Bei SMTP sind die BCC Adressen kein Bestandteil des Headers, immerhin sind es ja Blind Copies, die Idee ist dabei stattdessen im SMTP Protokoll TO richtig zu setzen. Wenn du also das SMTP Protokoll selber implementiert hast, entsprechend ändern, wenn nicht schau dir die genutzte Bibliothek an. Wenn alles nichts hilft, entweder per netcat einen transparenten Proxy bauen oder einfach alles mitsniffen.
12. Dezember 201212 j Wobei der MUA bzw. die PHP mail()-Funktion den BCC-Header normalerweise ausliest, den Header entfernt und dann schließlich die übergebenen Adressen beim Versand über SMTP im Envelope verwendet.
12. Dezember 201212 j Autor Danke für die Tipps. Die SMTP-Geschichte werde ich morgen mal näher unter die Lupe nehmen. Wenn es Fortschritt gibt, werdet ihr es erfahren.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.