Autor Zpráva
Pavlik
Profil *
Když posílám nějaký řetězec (text) přes fukci mail, tak se mi všechny české znaky předělaj na nějaký haluzky (2 za sebou), tak by mě zajímalo, jestli se dá někde nastavit asi kódování toho mailu či co?... celý web je psat v utf-8...
Dík za odpověď
tomas54689
Profil
Čau, řešil jsem podobný problém, ale na webu, který je psán win-1250. Udělal jsem to takhle:

// --funkce:
//Win2Iso($Text As String) - převod kódování z Windows-1250 na ISO-8859-2
function Win2Iso($text) {
return StrTr($text, "\x8A\x8D\x8E\x9A\x9D\x9E", "\xA9\xAB\xAE\xB9\xBB\xBE");
};

// --samotné poslání e-mailu
mail($new_email, Win2Iso($mail_subject), Win2Iso($mail_text), "From: noreply@noreply.cz\nX-Mailer: PHP3\nContent-Type: text/plain; charset=\"iso-8859-2\"");


Stejně byl ale problém s různými Outlooky. U tohoto řešení se správná diakritika zobrazovala na všech možných webmailech a v Microsoft Outooku. V Outlook Expressu to ale pořád nešlo.


-- Tomáš
www.pujcovnanaradi.com
www.ab-leasing.com
Venca Černík
Profil
Sory, že zas otvírám tohle téma....

Mám podobný problém. Nefunguje mi diakritika v emailu. Když ale použiju to co je tady výše (převést na ISO), tak diakritika funguje správně, ale vzhledem k tomu, že email je HTML email, tak to zase všechny značky vypíše...
Uroboros
Profil *
tak nepoužívej kódování text/plain, ale text/html. Uvidíš, že to pak fungovat bude.
Venca Černík
Profil
Uroboros
njn.. to mě nenapadlo... Vyzkouším to asi až zítra... Dík moc
Venca Černík
Profil
Uroboros
Funguje to, ještě jednou díky.
Toto téma je uzamčeno. Odpověď nelze zaslat.