2017-12-05 1 views
-1

Ich benutze phpmailer in Live-Server zum Senden von E-Mails für Absender und Empfänger. Es funktioniert gut, aber ich möchte zusätzliche Nachricht in Absender Kopie als "Danke für die Registrierung bei uns" hinzufügen. Ich kann es nicht tun. Könntest du bitte dabei helfen? Code I Bisher versucht:Senden von E-Mails an Absender und Empfänger mit PHPmailer

<?php 
$msg = ""; 

if (isset($_POST['submit'])) { 

    require 'phpmailer/PHPMailerAutoload.php'; 

    function sendemail($to, $from, $fromName, $body) { 
     $mail = new PHPMailer(); 
     $mail->setFrom($from, $fromName); 
     $mail->addAddress($to); 

     $mail->Subject = 'Contact Form - Email'; 
     $mail->Body = $body; 
     $mail->isHTML(false); 
     return $mail->send(); 
    } 
    function sender_mail($to, $from, $fromName, $body) { 
     $mail = new PHPMailer(); 
     $mail->setFrom($from, $fromName); 
     $mail->addAddress($to); 

     $mail->Subject = 'Copy Contact Form - Email'; 
     $mail->Body = $body . 'Thanks for registering with us'; 
     $mail->isHTML(false); 

     return $mail->send(); 
    } 
    $name = $_POST['username']; 
    $email = $_POST['email']; 
    $body = $_POST['body']; 
    sendemail('[email protected]', '[email protected]', $name, $body); 
    sender_mail('[email protected]', $email, $name, $body); 
}?> 
+0

Haben Sie mit meiner Lösung versucht durch Hinzufügen eines anderen Objekts von PHPMailer –

+0

Ist das Hausaufgaben? Es ist identisch mit [diese Frage] (https://stackoverflow.com/a/47632040), die bereits eine Antwort hat. – Synchro

Antwort

0

ich immer unterschiedliche Mail-Objekt erstellen Sie eine andere E-Mail zu senden. So wird es immer neue Nachrichten auswählen.

Für eine weitere E-Mail zu senden können Sie wie unten aktualisieren:

$mail2 = new PHPMailer(); 
    $mail2->setFrom($from, $fromName); 
    $mail2->addAddress($to); 

    $mail2->Subject = 'Copy Contact Form - Email'; 
    $mail2->Body = $body . 'Thanks for registering with us'; 
    $mail2->isHTML(false); 

    return $mail2->send(); 

zweite Option clearAddresses über Ihre zweite E-Mail zu benutzen, um Ihre frühere Nachrichten wie unten zu löschen:

$mail->clearAddresses(); 

    $mail = new PHPMailer(); 
    $mail->setFrom($from, $fromName); 
    $mail->addAddress($to); 

    $mail->Subject = 'Copy Contact Form - Email'; 
    $mail->Body = $body . 'Thanks for registering with us'; 
    $mail->isHTML(false); 

    return $mail->send(); 
+0

@ Amit Gupta Vielen Dank Problem wurde gelöst –

+0

Das ist eine Verschwendung von Ressourcen. Siehe [diese Antwort] (https://stackoverflow.com/a/47632040/333340) für einen effizienteren Ansatz. – Synchro

+0

@Synchro Ja, Sie haben Recht, aber was ist, wenn der Körper und das Thema für beide E-Mails unterschiedlich ist. Können wir $ mail-> Body für 2 E-Mails mit verschiedenen Nachrichten auf derselben Seite wiederholen? –

Verwandte Themen