Eli oon seuraavalla pätkällä saanu jossain tapauksissa ääkköset toimimaan:
$.ajaxSetup({ 'beforeSend' : function(xhr) { xhr.overrideMimeType('text/html; charset=iso-8859-1'); }, });
Mutta vaikka seuraavaan hakuun laittais mihin kohtaan tuon niin ei ääkköset toimi, neuvoja?
function showCustomer(str) { var xmlhttp; if (str=="") { document.getElementById("txtHint").innerHTML=""; return; } 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("txtHint").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","test_haku.php?malli="+str,true); xmlhttp.send(); }
test_haku.php pitää sisällään yhden tietokanta kyselyn asiakkaista, ja nimissä tulee kysymysmerkkejä kun ei ääkköset toimi.
tuon ajaxsetup koplauksen oon saanu toimimaan mm. updatefile functiota käytettäessä.
Oon nyt jälkeenpäin muokannu kaikki charsetit ja myslin taulut vastaamaan utf-8;aa mutta ongelma ei poistu.
Kuvia taulukoista ja ulosteesta:
http://img854.imageshack.us/g/utf1.jpg/
Vinkkejä?
http://mureakuha.com/keskustelut/19?18536
Linkitä ens kerran itse, jos olet kirjoitellut muualle samasta.
Tuo ajaxSetup on ilmeisestikin jQuery (tmv.) -koodia, kun taas seuraavassa pätkässäsi kirjoitat natiivia JS:ää. Ensimmäinen pätkä vaikuttanee vain kirjastolla tehtyihin AJAX-hakuihin. Käytä kirjaston AJAX-metodeja, jQueryssä $.get.
oon koittanu myös tämmösillä:
xmlhttp.setRequestHeader("Content-Type", "text/xml");
xmlhttp.setRequestHeader("charset", "utf-8");
Mutta ei vaikutusta.
Katso onko tuolta mitään apua sinulle.
sprawl kirjoitti:
oon koittanu myös tämmösillä:
xmlhttp.setRequestHeader("Content-Type", "text/xml");
xmlhttp.setRequestHeader("charset", "utf-8");Mutta ei vaikutusta.
Vastaanottamasi data on ISO-8859-1:tä ja ongelma on se, että selain tulkkaa sen UTF-8:ksi. Ei siis auta ollenkaan vielä eksplisiittisesti pakottaa selain UTF-8-tilaan.
Eiköhän ongelma korjaannu sillä, että PHP-skriptiin, jonka tuottamaa dataa yrität JS:llä lukea, laitat headerit kuntoon. On väärin lähteä ratkaisemaan ongelmaa ensin käyttäjän päässä, jos vika sijaitsee palvelimella, koska joudut samat purkat tunkemaan sitten jokaiseen asiakaspuolen softaan.
Aihe on jo aika vanha, joten et voi enää vastata siihen.