Umlaute in mail Funktion

T

TeisT

Aktives Mitglied
Thread Starter
Dabei seit
16.11.2003
Beiträge
126
Reaktionspunkte
0
Hallo!


Ich verschicke per Php einen Responder auf ein Formular. Der Responder beinhaltet etwas Text. Leider werden die Umlaute in der Mail als Funktionszeichen (?) dargestellt... Wie bekomme ich mein "ü" da rein?

$antwort="Vielen Dank für Ihre Anfrage!\n";

Danke!
 
Wie hast Du denn das Script codiert, welches die Mails verschickt? Ich
meine die Zeichencodierung. Diese sollte auf UTF-8 eingestellt sein.
 
so sieht's aus

Hier ist der komplette Code. Wenn ich eine html mail verschicke und die Umlaute entsprechend codiere wird's warscheinlich funktionieren, aber den Aufwand will ich eigentlich vermeiden. Ein Mac-Problem ist es nicht.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
<link href="css/style.css" rel="stylesheet" media="screen"></head>
<body>
<?php
$name=$HTTP_POST_VARS['name'];
$vorname=$HTTP_POST_VARS['vorname'];
$mail=$HTTP_POST_VARS['mail'];
$fon=$HTTP_POST_VARS['fon'];
$strasse=$HTTP_POST_VARS['strasse'];
$plz=$HTTP_POST_VARS['plz'];
$ort=$HTTP_POST_VARS['ort'];
$kommentar=$HTTP_POST_VARS['kommentar'];
$anrede=$HTTP_POST_VARS['anrede'];
if ($mail!="") {
$mailtext="Vorname: ";
$mailtext.=$vorname;
$mailtext.="\n";
$mailtext.="\n";
$mailtext.="Name: ";
$mailtext.=$name;
$mailtext.="\n";
$mailtext.="\n";
$mailtext.="Strasse: ";
$mailtext.=$strasse;
$mailtext.="\n";
$mailtext.="\n";
$mailtext.="PLZ: ";
$mailtext.=$plz;
$mailtext.="\n";
$mailtext.="\n";
$mailtext.="Ort: ";
$mailtext.=$ort;
$mailtext.="\n";
$mailtext.="\n";
$mailtext.="Fon: ";
$mailtext.=$fon;
$mailtext.="\n";
$mailtext.="\n";
$mailtext.="E-Mail-Adresse: ";
$mailtext.=$mail;
$mailtext.="\n";
$mailtext.="\n";
$mailtext.="Anfrage: ";
$mailtext.="\n";
$mailtext.=$kommentar;
$absender="From:";
$absender.=$mail;
// Jetzt den Responder setzen:
$antwort ="Vielen Dank für die Anfrage\n";
$antwort.="Wir werden schnellstens auf Ihre Anfrage reagieren.";
$antwort.="\n\nIhr REH-Montage Team";
$antwort.="\n\n--------\n\nDas war Ihre Anfrage:\n\n";
$antwort.=$kommentar;
//Jetzt Mail versenden:
mail("email@xxx.de", "Anfrage Kontaktformular", $mailtext, $absender);
//Jetzt den Responder versenden:
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/plain; charset=iso-8859-1\r\n";
$headers .= "From: XXX <info@xxx.de>\r\n";
mail($mail, "Re: Anfrage Kontaktformular xxx.de", $antwort, $headers);
echo '<p class=text> Vielen Dank, '.$anrede."\n\n" .$name.'! Das Kontaktformular wurde erfolgreich verschickt.</span>';
}
else {
print ("Übertragung fehlgeschlagen, <br>");
}

?>
</body>
</html>
 
Re: so sieht's aus

Original geschrieben von TeisT
Hier ist der komplette Code. Wenn ich eine html mail verschicke und die Umlaute entsprechend codiere wird's warscheinlich funktionieren, aber den Aufwand will ich eigentlich vermeiden.
&nbsp;

Ich meinte auch nicht, dass Du die Umlaute codieren sollst, sondern das Skript. Wenn
Du z.B. SubEthaEdit verwendest, kannst Du im Menü "Format -> Dateicodierung" (ich
weiß nicht genau ob es so heißt, da ich mein System auf Englisch eingestellt haben) und
somit die Datei in das Format "UTF-8" umwandeln. Dann sollte es funktionieren.

Grundsätzlich sollte man dies mit allen Skripten machen, bzw. im Editor so einstellen,
dass neue Dateien mit in UTF-8 erstellt werden und solche Probleme vermieden werden
können.
 
Zurück
Oben Unten