Autor Zpráva
flary
Profil
Zdravím,
mám jeden problém a moc chytrý z toho nejsem. Mám ajaxem řešený výpis komentářů do tabulky. Source comments.php má v sobě <? header("Content-type: text/html; charset=Windows-1250"); ?>, čili je 1250. Hlavní dokument, do jehož tabulky ajaxem data načítám je taky 1250. Jenže. Namísto: "Můj komentář 1" dostanu "MĂąj komentáø 1".

Nevíte co s tím? Díky
peta
Profil
flary
mysql SET NAMES nastav na win-1250
tipoval bych to, ze mas default pripojeni na utf8
flary
Profil
Díky, mysql_query("set names cp1250"); vyřešilo problémy se zobrazováním diakritiky z databáze, ale ajaxový výstup je pořád na houby.
joe
Profil
Pokud se nepletu, při používání AJAXu by se mělo používat UTF-8. Pak s tím nejsou problémy. Převedl bych všechno právě na UTF-8.
peta
Profil
flary
V prvni rade si dej do poradku soubor pro ajax. Cili si ten PHP dej otevirat v prohlizeci a nech ho vystup zobrazovat. Kdyz to odladis tam spravne, pak to napojuj na dalsi program.
Viz problem s cp1250. Zrejme tam je jeste dalsi.

PHP header (pokud server ma nastavene jine kodovani)
MYSQL setnames (pokud to nefunguje, je sql starsi 3.2x a vraci latin1, v tom pripade staci header)
JS - mozila umi nastavit minetype a muze byt default nastaveno na UTF

Opera - ta ma se vsim desne problemy a stravil jsem 2 dny na tom, nez mi tam chodilo kodovani. Jsem to nakonec poresil nejakou finfou detekci prohlizece, tusim. Nebo mozna prave tim, co zminil joe, vse jsem nastavil na UTF8
flary
Profil
peta
Dík za rady, teď to jede jak jsem potřeboval.

joe
Obešel jsem se bez UTF-8, ale i Tobě dík.
Toto téma je uzamčeno. Odpověď nelze zaslat.