POPDUM Posted February 21, 2008 Share Posted February 21, 2008 Hi, I have to send email containing German characters (e.g. umlauts). I already had a script which worked with English characters, but it would mess up the German ones. So, I decided to use encoding in the header, and encoded it to UTF-8 as text/html (using text/plain does not work). Now, the German characters appear OK, but the newlines get lost. I tried using \n and \r\n as newline characters, but it does not work. Here is the code fragment which I am using: $name = $_POST['sendername']; $telefon = $_POST['telefon']; $message = $_POST['message']; $email = $_POST['email']; $typedcode = $_POST['typedcode']; $body = "* Name:\n$name\n\n". "* Email:\n$email\n\n". "* Telefon:\n$telefon\n\n". "* Anfrage:\n$message"; $result = 'ok'; mail("[email protected]", "Kontaktformular", $body, "From: $email\n" . "MIME-Version: 1.0\n" . "Content-type: text/html; charset=utf-8\n" ); As I said above, I tried using \r\n too, but it does not work. Any answers or suggestions are most welcome. Quote Link to comment https://forums.phpfreaks.com/topic/92312-php-mail-either-corrupts-umlaut-characters-or-newlines/ Share on other sites More sharing options...
Daniel0 Posted February 21, 2008 Share Posted February 21, 2008 It does work, but new lines are considered whitespace in HTML. You need to use the HTML linebreak tag <br />. Quote Link to comment https://forums.phpfreaks.com/topic/92312-php-mail-either-corrupts-umlaut-characters-or-newlines/#findComment-472976 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.