nabend leute!
Ich hab heute ein echt merkwürdiges Problem entdeckt. Ich verschicke eine Bestätigungsemail mit Daten aus einem Formular. Wenn man den richtigen Header verwendet, sind ja Umlaute in der E-Mail überhaupt kein Problem.
Das Problem ist jedoch folgedens:
Habe ich im normalen statischen Mailtext Umlaute oder Sonderzeichen, so werden diese korrekt dargestellt. Werden jedoch Variablen aus einem Formular, die per $_POST ausgelesen wurden, in den Mailtext dynamisch hineingesetzt so sind nur diese Teile des Mailtexts fehlerhaft, was die Umlaute/Sonderzeichen angeht. Alle anderen Umlaute, werden jedoch korrekt dargestellt.
hier mal der Code, ich hab für das Problem keine Erklärung, hab auch schon versucht, die Variablen irgendwie zu codieren, aber hat bis jetzt keinen Erfolg gebracht:
Nochmal zur Erklärung: Die statischen Umlaute werden alle richtig angezeigt, nur die Umlaute, die sich natürlich in $empf befinden können, werden merkwürdig dargestellt.
$empf wurde ganz normal über
ausgelesen.
Ich wäre auch sehr verbunden, wenn ihr eine Lösung parat hättet.
Ich hab heute ein echt merkwürdiges Problem entdeckt. Ich verschicke eine Bestätigungsemail mit Daten aus einem Formular. Wenn man den richtigen Header verwendet, sind ja Umlaute in der E-Mail überhaupt kein Problem.
Das Problem ist jedoch folgedens:
Habe ich im normalen statischen Mailtext Umlaute oder Sonderzeichen, so werden diese korrekt dargestellt. Werden jedoch Variablen aus einem Formular, die per $_POST ausgelesen wurden, in den Mailtext dynamisch hineingesetzt so sind nur diese Teile des Mailtexts fehlerhaft, was die Umlaute/Sonderzeichen angeht. Alle anderen Umlaute, werden jedoch korrekt dargestellt.
hier mal der Code, ich hab für das Problem keine Erklärung, hab auch schon versucht, die Variablen irgendwie zu codieren, aber hat bis jetzt keinen Erfolg gebracht:
PHP-Code:
$betreff="Bestätigung";
$mailtext="Hallo $empf!
Sie können ihre Registrierung hier bestätigen:
MfG
XXX";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";
$headers .= "From: blabla <bla@bla.de>\r\n";
mail($mempf,$betreff,$mailtext,$headers);
$empf wurde ganz normal über
PHP-Code:
$empf=$_POST["name"];
Ich wäre auch sehr verbunden, wenn ihr eine Lösung parat hättet.
Kommentar