phpmailer

8

Wenn ich E-Mails sende, erhalte ich zwei E-Mails, aber ich sollte E-Mails an entsprechende E-Mails senden. Lopoping Problem?

%Vor%     
mark rammmy 16.09.2010, 15:04
quelle

3 Antworten

33

Wenn Sie die Quelle von PHP Mailer durchsehen, müssen Sie die Felder löschen. Zumindest die Adresse, vielleicht mehr. Hier ist der Codeabschnitt von der PHPMailer-Klasse, der die klaren Funktionen hat. Sie sind mehr als willkommen, durch sie zu schauen und sie usw. zu versuchen. Dies ist offensichtlich eine Alternative zum erneuten Instanziieren eines neuen Objekts, das einen Speicherverlust verursachen kann oder auch nicht (abhängig davon, wie viele Anrufe Sie dazu führen).

So implementieren Sie den clearAddresses-Code:

%Vor%

Ich habe den eigentlichen Code entfernt, da Sie nur den Namen der Beschreibung und der Funktion benötigen.

%Vor%     
Brad F Jacobs 16.09.2010 15:35
quelle
4

Sie brauchen a:

%Vor%

am Anfang Ihrer for -Schleife - so wie es ist, das zweite Mal durcheinander mit der ersten E-Mail (da eine neue nicht erstellt wird).

Wie Sie bereits erwähnt haben, muss body auch zurückgesetzt werden - in der Tat ist die Verwendung einer separaten Var wie diese nicht sehr hilfreich - besser, um direkt an MsgHTML zu liefern. Da der Inhalt Ihrer E-Mail trivial ist, können Sie auch eine reine Textversion der Daten senden (hängt von Ihrem Zielempfänger ab, nehme ich an). Also das aktualisierte Skript:

%Vor%     
Rudu 16.09.2010 15:33
quelle
2

Wenn Sie den php-Mailer-Code durchsehen, gibt es diese nützliche Methode ClearAllRecipients (), wenn Sie to, cc und bcc auf einmal löschen möchten.

    
Rajesh 20.07.2013 08:50
quelle

Tags und Links