phpRS 2.6.5 : phpRS Fórum
Toto fórum je určené výhradně k diskuzi o verzi phpRS v2.6.5.
phpRS - redakční a informační systém
Informační maily z webu v UTF-8
Zaslán uživatelem/kou: pjan (IP adresa zaznamenána)
Datum: 2006-01-16, 17:15

Zdravím,
mám web v UTF-8. Čeština všude v pořádku, ale zlobí kódování informačních mailů odesílaných z webu a to jak z administrativní části (informace o novém článku), tak mail, kterým může čtenář upozornit někoho na článek.

Tyto maily, vygenerované systémem PHPRS mají v hlavičce ISO 8852-2, ale v těle zprávy jsou pomršené znaky původně v UTF-8.
Například vložím-li jako zprávu pro příjemce v upozornění na článek text "ěščřžýáíé", přijde mi mailem "Ä?ĹĄÄŤĹ?ŞýåíÊ".

V knihovně astdlib_mail.php jsou konverzní funkce z win1250 do ASCII a ISO 8859-2, ale ne konverze z UTF-8. To asi nebude dobře?

Díky za případnou radu a pomoc.

Petr

Re: Informační maily z webu v UTF-8
Zaslán uživatelem/kou: JanVar (IP adresa zaznamenána)
Datum: 2006-01-16, 17:18

iconv

-- JaV ---- [http://www.hades.cz] ---- security by obscurity ---------------------------------------------
motto:
It's OK to be ignorant; it's not OK to play stupid.
But it's simply not efficient for us to try to help people who are not willing to help themselves.
----------------------------------------------------------------------------------------------------------------------

Re: Informační maily z webu v UTF-8
Zaslán uživatelem/kou: pjan (IP adresa zaznamenána)
Datum: 2006-01-16, 19:46

Díky za doporučení.
Našel jsem jednodušší cestu pomocí ponechání mailu v kódování UTF-8. Změny v souboru astdlib_mail.php:

místo
$probsah=$this->win1250_to_iso88592($this->obsah);
je
$probsah=$this->obsah; //ponechat kodovani v UTF-8

tím se vyřadí konverze z Win 1250, která texty v UTF8 poškozuje


místo
$prhlavicka .='Content-Type: text/plain; charset="iso-8859-2"'.$konec_radku_hlavicka;
je
$prhlavicka .='Content-Type: text/plain; charset="utf-8"'.$konec_radku_hlavicka; //mail v UTF-8
čili tím se ponechá kódování zprávy v utf-8.

místo
$pomocny_predmet=$this->win1250_to_iso88592($this->predmet);
bude
$pomocny_predmet=$this->predmet;
- tím se ponechá předmět v UTF-8

místo
$this->predmet='=?ISO-8859-2?B?'.Base64_Encode($pomocny_predmet).'?=';
bude
$this->predmet='=?utf-8?B?'.Base64_Encode($pomocny_predmet).'?=';
Tato změna oznámí správné kódování předmětu zprávy.

Takhle mi to funguje - lze vyzkoušet na www.cds.cz nebo www.kanafas.cz

Zdravím, Petr


Re: Informační maily z webu v UTF-8
Zaslán uživatelem/kou: jirka (IP adresa zaznamenána)
Datum: 2006-01-19, 14:05

Já jen dodám, že právě chystaná nová verze 2.8.0 na tento problém již pamatuje a přizpůsobí kódování e-mailu stavu (kodávní), který je nastaven v souboru config.php u proměnné $GLOBALS['rsconfig']['kodovani'].

Jiří Lukáš
webmaster www.supersvet.cz

Re: Informační maily z webu v UTF-8
Zaslán uživatelem/kou: jardach (IP adresa zaznamenána)
Datum: 2012-09-13, 10:39

Mockrát díky za vyřešení mého problému. (infomaily v utf-8)

Já se s tím trápím už několik dní, a tady najdu hotové řešení.

Tohle fórum je fakt užitečné. Zatím jsem tu našel všechno, co jsem kdy k phprs potřeboval.

Ještě jednou díky,
Jarda



Lituji, ale pouze registrovaní uživatelé mohou zasílat příspěvky do této sekce.
This forum powered by Phorum and designed by STaNBoSS.