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

Deutsche Umlaute in Formularen automatisch ändern

musikbaer

Neues Mitglied
Hallo,
ein immer wiederkehrendes Problem aber ich fand bisher keine vernünftig funktionierende Lösung, vielleicht hat hier jemand einen Vorschlag für mich.
Ich habe folgendes Formular
PHP:
<?php
$fehler = "";
$nz = chr(13).chr(10);
$vorname = $_POST['vorname'];
$name = $_POST['name'];
$email = $_POST['adresse'];
$betreff = $_POST['betreff'];
$anfrage = $_POST['anfrage'];
$sparte = $_POST['sparte'];
if (empty($vorname)) $fehler .="<li>der Vorname fehlt</li>";
if (empty($name)) $fehler .="<li>der Nachname fehlt</li>";
if (empty($email)) $fehler .="<li>die eMail-Adresse fehlt</li>";
if (empty($betreff)) $fehler .="<li>der Betreff fehlt</li>";
if (empty($anfrage)) $fehler .="<li>es wurde keine Nachricht eingetragen</li>";
if (empty($sparte)) $fehler .="<li>bitte tragen Sie eine Sparte ein</li>";
if (empty($fehler)) {
$an = "[email protected]";
$betreff = "Nachricht via Kontaktformular";
$from = "From: Kontaktformular $email";
$datum = "Datum: ".date("j.n.Y").$nz;
$zeit = "Zeit: ".date("H:i").$nz;
$von = "Von: ".$vorname." ".$name." ". "(".$sparte.")". "<".$email.">".$nz;
$linie = "--------------------------------------------------------------------------".$nz;
$text = $datum.$zeit.$von.$linie.$anfrage.$nz;
$titel = "Ihre Nachricht wurde versandt";
mail($an,$betreff,$text,$from, $mail_header);
}
else $titel ="Es ist ein Fehler aufgetreten";
?>
<html lang="de">
    <head>
        <titel> <?php $titel?></titel>
    </head>
    <body>
    <?php
    if (empty($fehler)) {
        $text = strip_tags($text);
        $text = htmlentities($text);
        $text = str_replace($nz,"<br />",$text);
        echo "<p>Ihre Nachricht wurde verschickt.</p>";
        echo "<p>$text</p>";
    }    else {
        echo "<p>Ihre Nachricht konnte nicht versandt werden weil";
        echo "<ul>$fehler</ul>";
        echo "</p>";
    }
    ?>
    </body>
</html>
Nun versuche ich verzweifelend die Umlaute automatisch zu korrigieren.
Leider bin ich nicht erfolgreich, weder mit meinen eigenen bescheidenen Fähigkeiten noch mit goo... eine Lösung zu finden.
Ich sage vorab schon mal danke für Eure Mühe
 
Was meinst Du mit "korrigieren"? Würdest Du an jeder Stelle den selben Zeichensatz verwenden hättest Du es nicht nötig irgendetwas zu korrigieren. Mit jeder Stelle meine ich alles - angefangen vom HTTP-Content-type über den Zeichensatz in dem die Datei gespeichert ist bis hin zum Mail-Zeichensatz.
 
Wenn jemad in das Formular Umlaute eingibt, kommen sie nur als
Hieroglyphen in der Mail an und nun wollte ich es so einrichten, dass die Umlaute auch in der Mail richtig dagestellt werden.
 
Zurück
Oben