• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

mail() schickt Mail 2 mal

Stylesau0815

Neues Mitglied
Hallo zusammen,

kleines Problem. Mein mail() Befehl sieht so aus:

PHP:
<?php
$timestamp = time();
$date = date("d.m.Y",$timestamp);
$time = date("H:i",$timestamp);
$mailtext = "Anfrage vom ".$date." - ".$time." Uhr:\n\n".$_POST['request'];
mail($mail, 'Anfrage', $mailtext);
?>

Schickt die Mail aber immer zweimal...? Woran liegt das? Bin bei 1&1 ganz nebenbei.

Danke Euch!
Stylesau
 
Ich kann dir zwar leider nicht sagen, weshalb die Mail immer 2x versendet wird, aber du solltest den vierten Parameter von mail() verwenden, da das sonst manchmal Probleme bereitet und häufig die Mail dann auch im Junk-Email Ordner etc. landet.
PHP: mail - Manual
Dort ists nochmal etwas erläutert.
Vielleicht behebt das ja sogar dein Problem.^^
 
Jetzt siehts so aus, aber schickt immer noch zweimal... hmmm...

PHP:
$header = "Reply-to: ".$_POST['mail']."\n";
    $header .= "From: ".$_POST['mail']."\n";
    $header .= "MIME-Version: 1.0\n";
    $header .= "Content-type: text/plain; charset=iso-8859-1\n";
    $header .= "Content-transfer-encoding: 8bit\n";
    $header .= "Date: " . date('r', time())."\n";
    $timestamp = time();
    $date = date("d.m.Y",$timestamp);
    $time = date("H:i",$timestamp);
    $mailtext = "Anfrage vom ".$date." - ".$time." Uhr:\n\n".$_POST['request'];
    mail($mail, 'Anfrage', $mailtext, $header);
 
Dann ist mail() nicht richtig konfiguriert. Als Backend wird da häufig Sendmail benutzt und da ist der Fehler zu suchen.
 
Probier mal eine Mailerklasse wie PHPMailer (LGPL lizensiert), vielleicht kann die noch was rausholen. Generell heißt es immer, dass Mailversand ein so unübersichtliches Thema ist, dass man sich nicht selbst dran versuchen sollte. Bestehende Mailerklassen umschiffen da einige Klippen wie Spamfilter u. ä.
 
Zurück
Oben