ugrás a tartalomhoz

ie6 firefox AJAX

aspirany · 2008. Aug. 10. (V), 18.08
Sziasztok!

Lehet hogy ezt a témát a php-ba kellet volna, ha igen elnézést,de élég sok mindent érinthet (adtbázis,php,ajax)
A
problémám az,hogy készítettem egy programot, amit használok IE6 illetve firefox3 alatt.
Az adatbevitelnél van probléma. Mondegyik oldal UTF-8 az adatbázis is UTF-8
Firefox alatt nincs gond az adatbevitellel.IE6 alatt viszont iconv kell ISO-8859-2=> UTF-8 csak akkor hajlandó az adatokat bevinni adatbázisba ajaxon keresztül.

itt az ajax kódrészlet:

off: sorszámozott kódót hogyan tudok csinálni?

function ajanlat_mentes(statusz)
{

if(ajaxRequest.readyState > 0 || ajaxRequest.readyState < 4)
{
var ajaxDisplay = document.getElementById('allert');
ajaxDisplay.innerHTML = "<div id=\"background\"><div id=\"overlay\"><div><img src=\"images/loading.gif\" align=\"middle\"></div></div></div>";
    }

if (ajaxRequest.readyState == 0 ||ajaxRequest.readyState == 4)
{
 
        form();
var url="";
 
  //vegigmegyek a tomb elemein es azt az url valltozoba rakom
 for(i=0; i<form_elemek.length; i++)
 {
url += form_elemek[i]+"="+encodeURIComponent(document.getElementById(form_elemek[i]).value)+"&";
 }
 
 url += "tcsaladselect="+ document.ajanlat.alfa1.options[document.ajanlat.alfa1.selectedIndex].text;
   url += "&markaselect="+ document.ajanlat.alfa2.options[document.ajanlat.alfa2.selectedIndex].text;
 
 url += "&tcsaladvalue="+ document.ajanlat.alfa1.options[document.ajanlat.alfa1.selectedIndex].value;
 url += "&markavalue="+ document.ajanlat.alfa2.options[document.ajanlat.alfa2.selectedIndex].value;

  ajaxRequest.open("GET","functions_inc.php?function=ajanlat_mentes&statusz="+statusz+"&"+url, true);
  ajaxRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4 && ajaxRequest.status == 200)
   {
  if(statusz=='ment')
  {
  ajanlat_form_refresh(document.getElementById('szerzodoID').value,document.getElementById('szerzodesID').value);
  }
  else if(statusz=='lezar') //ide jön a nyomtatási ablak
  {
   nyomtat(statusz,document.getElementById('szerzodesID').value);
  }
       }
  }
  ajaxRequest.send(null);
}

}


próbáltam így is :("Content-Type","application/x-www-form-urlencoded;charset=UTF-8"

köszönöm a segítséget
 
1

megoldva és elnézést

aspirany · 2008. Aug. 10. (V), 20.48
Megoldva a probléma,de élég érdekes

url += "tcsaladselect="+encodeURIComponent(document.ajanlat.alfa1.options[document.ajanlat.alfa1.selectedIndex].text);
url += "&markaselect="+encodeURIComponent(document.ajanlat.alfa2.options[document.ajanlat.alfa2.selectedIndex].text);

url += "&tcsaladvalue="+encodeURIComponent(document.ajanlat.alfa1.options[document.ajanlat.alfa1.selectedIndex].value);
url += "&markavalue="+encodeURIComponent(document.ajanlat.alfa2.options[document.ajanlat.alfa2.selectedIndex].value);

innen hiányzott 'encodeURIComponent', de ez nem magyarázza hogy egy paraméter amit visszakapok a lekérdezésből és szintén nem volt jó neki most meg okés.
2

php

jaczkog · 2008. Aug. 12. (K), 22.26
Az én tippem az lenne, hogy az IE a HTML kódlapot rosszul ismeri fel.
Próbáld meg php-ből beállítani az utf-8-at:
header("Content-type: text/html; charset=utf-8");
Ha hülyeséget írtam, akkor bocs.