Frage

Ich versuche, ein Plain / HTML auszusenden mehrteiliger E-Mail und ich bin derzeit mit der PHP-Funktion mail (). Viele Menschen haben PHPMailer empfohlen so dass ich dachte, dass ich es versuchen würde.

Doch wie alles heute zu sein scheint, scheint es sehr kompliziert. Ich heruntergeladen, und es spricht darüber Installation und Konfiguration von MySQL-Verbindungen und SMTP-Verbindungen !? Alles, was ich will, ist zu tun, um eine nette Klasse, die die MIME-E-Mails für mich bauen und sie senden! Ich verstehe die SMTP-Möglichkeiten, aber es scheint alles so komplex!

Gibt es eine Möglichkeit diese einfach nur mit, zum Beispiel einer PHP-Datei (keine Server-Installation oder Re-Kompilieren PHP!) Und dann mit nur um die Klasse zu bauen und senden Sie die E-Mail?

Ich wäre sehr dankbar, wenn jemand Dinge einfach erklären könnte! Ich bin sicher, es ist möglich, und ich kann nach meiner Stunden des Suchens gibt es keine wirklich gute, einfache Artikel über sie online nicht glauben. Alles ist zu kompliziert, wenn ich es nicht weiß sein müssen!

War es hilfreich?

Lösung

Versuchen Sie Swiftmailer statt.

Andere Tipps

Pretty Weg (von Link ) erstrecken sich erste PHPMailer und stellen Sie die Standardeinstellungen für Ihre Website:

require("class.phpmailer.php");

class my_phpmailer extends phpmailer {
    // Set default variables for all new objects
    var $From     = "from@example.com";
    var $FromName = "Mailer";
    var $Host     = "smtp1.example.com;smtp2.example.com";
    var $Mailer   = "smtp";                         // Alternative to IsSMTP()
    var $WordWrap = 75;

    // Replace the default error_handler
    function error_handler($msg) {
        print("My Site Error");
        print("Description:");
        printf("%s", $msg);
        exit;
    }

    // Create an additional function
    function do_something($something) {
        // Place your new code here
    }
}

Dann schließen Sie das Skript bei Bedarf (in diesem Beispiel es mail.inc.php benannt ist) und verwenden Sie Ihre neu erstellte my_phpmailer Klasse irgendwo auf Ihrer Website:

require("mail.inc.php");//or the name of the first script

// Instantiate your new class
$mail = new my_phpmailer;

// Now you only need to add the necessary stuff
$mail->AddAddress("josh@example.com", "Josh Adams");
$mail->Subject = "Here is the subject";
$mail->Body    = "This is the message body";
$mail->AddAttachment("c:/temp/11-10-00.zip", "new_name.zip");  // optional name

if(!$mail->Send())
{
   echo "There was an error sending the message";
   exit;
}

echo "Message was sent successfully";

Ich weiß nichts über PHPMailer, aber ich empfehlen die Verwendung von Zend_Mail . Hier ist ein einfaches Beispiel mit einem Anhang:

$mail = new Zend_Mail();
$mail->setBodyText('This is the text of the mail.');
$mail->createAttachment($myImage,
                        'image/gif',
                        Zend_Mime::DISPOSITION_INLINE,
                        Zend_Mime::ENCODING_8BIT);
$mail->setFrom('somebody@example.com', 'Some Sender');
$mail->addTo('somebody_else@example.com', 'Some Recipient');
$mail->setSubject('TestSubject');
$mail->send();

Wahrscheinlich tut alles, was Sie wollen (Attachments, HTML, SMTP-Konfiguration, ...). Standardmäßig verwendet es sendmail, wie die mail() Funktion, so dass Sie zu konfigurieren etwas wie SMTP nicht haben, wenn Sie es nicht benötigen.

Es hat auch sehr gute Dokumentation, so dass Sie nicht Probleme bei der Suche Beispiele haben werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top