|
Posted by Ciuin on 03/27/07 10:24
On Mar 27, 11:55 am, "Ciuin" <c...@gmx.de> wrote:
> Hi all,
>
> I need to mail() emails with user input that does contain non-ascii
> (umlauts, accents) and non-latin (cyrillic) characters in the
> "Subject:" and "From:" headers. I understand that they are typically
> encoded in UTF8 like this:
>
> =?UTF-8?B?w5Z0emkg0J/RgNC40LLQtdGC?=
>
> but I cannot find a PHP function to encode the input string in this
> way. utf8_encode gives me garbled char soup, so what do you use?
>
> Thanks.
Ah well, bad thinking on my part.
Instead of utf8_encode I need base64_encode, of course (as the "...?
B?..." in the code tells me). So this:
$from = "From: =?UTF-8?B?" . base64_encode($_POST['name']) . "?= <" . $
$_POST['email'] . ">\n";
produces a correctly encoded header. Same for subject.
Hope it helps someone.
Navigation:
[Reply to this message]
|