Tach!
ich versende in php ein formular mit dem "mail"-befehl.
Man nennt mail() übrigens konkret eine Funktion.
wenn ich aber bei straße irgendwie seestraße mache kommt in der mail für das "ß" kryptische zeichenfolge.
php:
$header = 'charset=UTF-8' ;
Das ist ein Fantasie-Header, den wohl kein Mail-Client berücksichtigen wird. Eine Charset-Angabe kann immer nur zusammen mit dem Content-Type-Header angegeben werden. In dem bereits gestern verlinkten Beispiel #4 auf der PHP-Seite zu mail() ist einer für HTML zu sehen, für Plain-Text heißt die Angabe text/plain.
php:
$header .= 'Content-type: text/html; charset=UTF-8';
So muss das aussehen, allerdings text/plain.
Und dann müssen Header mit Zeilenumbruch getrennt werden (\r\n). Wenn das allerdings dein einziger Header ist, dann ist der .= unsinnig und ein einfaches = vorzuziehen.
mail("$empf","Ein neuer Kontakt","Hallo. Sie haben eine neue Kontaktanfrage von : \n\n\nName : $_POST[Name]\n\nStraße : $_POST[Strasse]\n\nWohnort : $_POST[Ort]\n\nFirma : $_POST[Firma]\n\nTelefon : $_POST[Telefon]\n\nE-mail : $_POST[Email]\n\nGesendete Nachricht :\n$_POST[Nachricht]","$header");
Einfache Variablen in "" einzurahmen ist unsinnig.
Lösung denke ich wäre den mail befehl mit html zu gestaltn oder gehts irgendwie einfacher ?
Das Beispiel #4 zeigt das Erstellen einer Mail mit nur einem HTML-Teil. Üblicherweise wird jedoch eine mehrteilige Mail (multipart) erstellt, mit einem Plaintext- und dem HTML-Teil drin. Sowas zu Fuß zu erstellen ist jedoch noch drei Ecken komplexer. Wenn du das vorhast, wäre Fortgeschrittener PHP-Formmailer ein Einstieg in ein Hilfmittel, das dir die Arbeit abnimmt.
dedlfix.