Autor Zpráva
Vitality77
Profil *
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
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 *
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 volám ho <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
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 *
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
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í.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: