Da mail()
auf dem Webserver offenbar ging (sonst könntest Du Dich nicht über die Erkennung als „Junk“ beschweren) sollte der PHP-Mailer auch mit dem, auf dem Webserver laufenden und vom Hoster offensichtlich korrekt konfiguriertem sendmail funktionieren:
<?php
use PHPMailer\PHPMailer\PHPMailer;
// use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
// Klasse(n) laden
require __DIR__ . '/PHPMailer/src/Exception.php';
require __DIR__ . '/PHPMailer/src/PHPMailer.php';
// require 'path/to/PHPMailer/src/SMTP.php';
//Create an instance; passing `true` enables exceptions
$mail = new PHPMailer(true);
try {
$mail->isSendmail();
$mail->ContentType = PHPMailer::CONTENT_TYPE_PLAINTEXT;
$mail->CharSet = 'UTF-8';
$mail->Encoding = 'base64';
### Beachte den Hinweis unten:
$mail->setFrom( 'user@host', 'Mein Name' );
###
$mail->addReplyTo( 'user@host', 'Mein Name' );
$mail->addAddress( 'user@host', 'Mein Name' );
$mail->Subject = 'Test mit PHPMailer via sendmail';
$mail->Body = "Hallo!\r\nDas ist nur ein Test.";
$mail->send();
} catch ( phpmailerException $e ) {
echo "Das Mail konnte nicht verschickt werden. Der Admin wurde benachrichtigt.";
trigger_error( $mail->ErrorInfo, E_USER_NOTICE );
trigger_error( $e->errorMessage(), E_USER_ERROR );
}
?>
Fertig.
Das Problem mit der Spamerkennung und Deine weiteren Probleme mit der Konfiguration kann niemand für Dich lösen, da deren Ursachen ja geheim sind.
Womöglich (wahrscheinlich) kannst Du diese Zeile nicht mit beliebigem Inhalt verwenden, weil womöglich/regelmäßig Dein Hoster dort etwas einsetzt oder bestimmte Werte erwartet:
$mail->setFrom( 'von_wem@example.com', 'Vorname Nachname' );
- Sollte diese Zeile also Probleme machen, dann weiß der Kundendienst des Hosters die Antwort.
- Wichtig: Das wird auf Deiner Windows-Kiste mit XAMPP vorhersehbar NICHT funktionieren, denn ich denke, dass Du Mercurry Mail auch nicht richtig eingerichtet hast.
- Das obige Skript hat soeben mit korrekten Werten funktioniert: „user@host“ sowie „Mein Name“ müssen natürlich ordentlich drin stehen.
- Das Mail kam auf meinem Google-Account sauber an, es wurde nicht als Spam/Junk eingestuft.
- __DIR__