Autor | Zpráva | ||
---|---|---|---|
Vitality77 Profil * |
#1 · Zasláno: 7. 6. 2013, 12:06:07
Dobrý den,
Mám dotáz ohledně enkodování jazyku. Stránka funguje perfektně, byla udělana přes php get methodou a rozhodl jsem se to předělat pomoco ajaxu xmlhttp.open("GET",stranka,true); .. jenže nastál problém, že stránky které se zobrazovali normálně se jíž nezobrazují a třeba místo ě,ř,č,ů jsou písmena jiná např:nìjaké, tvoøené, vìci, koníèky atd..
<meta http-equiv="Content-Type" content="text/html; charset=ISO 8859-2" /> mám pořád v hlavičce ale jen s tím to nestačí a ukazují se čtverce a nvm co všechno. Když do každé stránky vložím <?php header("Content-Type: text/html; charset=ISO 8859-2\n"); ?> tak zobrazuje se to tak jak jsem to popisoval výše s příklady. Kde je prosím chyba, jak ji předejít? Díky
|
||
user243 Profil |
#2 · Zasláno: 7. 6. 2013, 12:28:21
mně pomohlo přidáním tohoto kódu do .htaccess, ale záleží, jaké používáš kódování;
<Files *> AddDefaultCharset windows-1250 php_value default_charset "windows-1250" </Files> |
||
Vitality77 Profil * |
#3 · Zasláno: 7. 6. 2013, 12:38:21
já jsem v tom lajk ale myslím si, že to patří do xml souboru mám pravdu?
js je následující: function loadXMLDoc(stranka) { var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("obsah").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET",stranka,true); xmlhttp.send(); } <a onclick="loadXMLDoc('pages/moje_projekty.php')"><h2>Moje projekty</h2></a>
Kde pak můžu vložít nějaké defaultní nastavení charset?? |
||
Chamurappi Profil |
#4 · Zasláno: 7. 6. 2013, 12:42:52
Reaguji na Vitalityho77:
„rozhodl jsem se to předělat pomoco ajaxu“ Proč? Vyřešil jsi, všechny možné problémy s tím související? Třeba to, aby fungovalo tlačítko zpět? „mám pořád v hlavičce ale jen s tím to nestačí a ukazují se čtverce“ Protože bez explicitní deklarace kódování v HTTP hlavičce (skutečné, ne <meta> ) se předpokládá UTF-8 a tam tvá diakritika tvoří neplatné znaky.
„tak zobrazuje se to tak jak jsem to popisoval výše s příklady“ Protože prohlížeč špatně pochopí pokažený zápis „ ISO 8859-2 “, vnímá ho zřejmě jako západoevropské ISO. Zkus „ISO-8859-2 “, s pomlčkou.
„já jsem v tom lajk ale myslím si, že to patří do xml souboru mám pravdu?“ Patří to do souboru .htaccess a dělá to cca totéž, co tvá funkce header , akorát globálněji. Neřeší to problém.
|
||
Vitality77 Profil * |
#5 · Zasláno: 7. 6. 2013, 13:31:55
Chamurappi:
> „rozhodl jsem se to předělat pomoco ajaxu“ > Proč? Vyřešil jsi, všechny možné problémy s tím související? Třeba to, aby fungovalo tlačítko zpět? >Proč? Protože, mě to baví se učít věci okolo toho a všechno budu řešit postupem času a přicházet na nové věci, nemůžu se hodit ihned do moře když neumím plavat. > > „mám pořád v hlavičce ale jen s tím to nestačí a ukazují se čtverce“ > Protože bez explicitní deklarace kódování v HTTP hlavičce (skutečné, ne <meta>) se předpokládá UTF-8 a tam tvá diakritika tvoří neplatné znaky. > > > „tak zobrazuje se to tak jak jsem to popisoval výše s příklady“ > Protože prohlížeč špatně pochopí pokažený zápis „ISO 8859-2“, vnímá ho zřejmě jako západoevropské ISO. Zkus „ISO-8859-2“, s pomlčkou. >Vždycky položím stupidní otázku která se vyřeší podobně jako ted, že chyběla pomlčka. Děkují pomlčkou se to vyřešilo > > „já jsem v tom lajk ale myslím si, že to patří do xml souboru mám pravdu?“ > Patří to do souboru .htaccess a dělá to cca totéž, co tvá funkce header, akorát globálněji. Neřeší to problém. >Ted akorát zjistit co je to ten .htaccess a jak ho používat, děkují ještě jednou |
||
Chamurappi Profil |
#6 · Zasláno: 7. 6. 2013, 13:54:05
Reaguji na Vitalityho77:
„nemůžu se hodit ihned do moře když neumím plavat“ Ale můžeš se zbytečně topit v louži. Vyjma velmi vzácných případů se vyměňování hlavního obsahu stránky JavaScriptem šeredně nevyplácí. |
||
Časová prodleva: 12 let
|
0