Portál AbcLinuxu, 12. května 2025 11:33

Dotaz: azbuka ve webovem formulari

21.1.2009 11:33 ParadoX | skóre: 20 | blog: Paradox
azbuka ve webovem formulari
Přečteno: 695×
Odpovědět | Admin
Zdravim, u jednoho zakaznika mame nekolik jazykovych variant webovych stranek. Cele stranky jsou v kodovani charset=windows-1250. Pokud zakaznik vyplni webovy formular, cely jeho text prevedu na ISO-8859-2 a odeslu pres mail. Vse funguje bez problemu.

Pokud ale na ruske verzi stranek nekdo vyplni formular azbukou, v emailu prijdou html entity & #1050;& #1086; ... Sice si muzu zobrazit text pres kodovani outlook ci thunderbird ale zakaznikovi se to nelibi. Nesetkali jste se s timto? Dalsi omezeni je php 4.4 a predelat cele stranky na UTF take mozne neni. Diky za jakoukoli radu
Don´t worry, be happy.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

21.1.2009 12:41 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: azbuka ve webovem formulari
Odpovědět | | Sbalit | Link | Blokovat | Admin

Tu ruskou verzi stránek ale asi v cp1250 nemáte, že? :-)

Ty HTML entity v e-mailu se snad správně nezobrazí? Vy ten e-mail asi teda posíláte jako textový (plain/text) a do něj prostě dáte to co vám přijde z formuláře. Asi ten e-mail budete muset posílat v UTF-8 a entity převést.

Ještě rýpnutí - že by kvůli používání UTF-8 na webu bylo nutné předělat celé stránky... to je snad jen výsada PHP :-)

21.1.2009 13:03 ParadoX | skóre: 20 | blog: Paradox
Rozbalit Rozbalit vše Re: azbuka ve webovem formulari
ta ruska verze stranek ma taky
meta http-equiv="Content-type" content="text/html; charset=windows-1250">

texty jsou ulozene pomoci html entit (nas redakcni system si to takto ulozi) S tim mailem je to jak popisujes, potrebuji ty entity prevest a pak poslat.

Jinak ohledne toho rypnuti, prevedeni stranek na UTF-8 neni mozne z toho duvodu, ze stranky funguji na RS na kterem funguje dalsich cca 3000+ webu na spolecnem jadre. Pokud bych udelal hack pro tyto jedny, zase bych musel testovat co se mi rozsype a co ne a to neni prace na jedno odpoledne.

Don´t worry, be happy.
AraxoN avatar 21.1.2009 13:42 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: azbuka ve webovem formulari

Znaková sada windows-1250 neobsahuje azbuku, takže neexistuje žiaden spôsob ako by email vo formáte plaintext kódovaný vo windows-1250 mohol zobraziť azbuku. To že to bol prehliadač schopný odoslať je dané tým, že to predtým prepísal na entity, ktoré by v HTML boli zobraziteľné.

Buď do svojho systému dorobíte podporu pre rôzne kódovania pre rôzne weby, alebo prejdete na UTF8. Tá druhá možnosť mi príde jednoduchšia a celkovo robustnejšia...

Alebo dorobíte škaredý hack, ktorý pri odosielaní mailov z tejto ruskej verzie webu odošle plaintext s kódovaním windows-1251 a predtým tie HTML entity prekope späť na ruské znaky.

21.1.2009 13:49 ParadoX | skóre: 20 | blog: Paradox
Rozbalit Rozbalit vše Re: azbuka ve webovem formulari
jo, diky za shrnuti, tim jsi mi potvrdil to, ceho jsem se obaval. Zakaznika jsme uz naucili zobrazit si azbuku v emailovem klientovi takze to nejak velky problem neni. Jen asi bude nejlepsi do budoucna prehodit cely web na UTF-8

Diky za pomoc
Don´t worry, be happy.
21.1.2009 13:44 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: azbuka ve webovem formulari

Takže nejspíš převést text e-mailu do utf-8, pak html_entity_decode s charset nastaveným na UTF-8 a posílat e-mail v utf-8... Nedokážu si představit, jak jinak to udělat, kromě poslání mailu jako HTML (a i v tom případě je slušností poslat textovou verzi).

Těmi 3000+ weby ve mě docela probouzíte zvědavost :-)

21.1.2009 14:08 ParadoX | skóre: 20 | blog: Paradox
Rozbalit Rozbalit vše Re: azbuka ve webovem formulari
nejak se porad nedari. Kouknu na to jeste vecer.

Zvedavost chapu, ale nechci delat reklamu. Zkusim napovedu a myslim ze zbytek si dohledas (MŠ Štolmířská)
Don´t worry, be happy.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.