did you try playing with the $.ajax scriptCharset option ? see: http://docs.jquery.com/Ajax/jQuery.ajax
On Wed, Dec 31, 2008 at 1:27 PM, AdrianMG <yens...@gmail.com> wrote: > > I am not pretty sure but I think you can work with UTF8 only in AJAX, > but I recommend you work with UTF8 always > > On Dec 30, 2:09 pm, Romain Viovi <imp...@gmail.com> wrote: >> Hello Everybody, >> >> I'm experiencing some problems with the $.ajax >> >> When sending simple post request, request Headers (logged with firebug) >> are always "application/x-www-form-urlencoded; charset=UTF-8" tagged for >> content-type >> >> see : >> >> Request Headers >> User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.5) >> Gecko/2008120122 Firefox/3.0.5 >> Accept */* >> Accept-Language fr >> Accept-Encoding gzip,deflate >> Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 >> Keep-Alive 300 >> Connection keep-alive >> Content-Type application/x-www-form-urlencoded; charset=UTF-8 >> X-Requested-With XMLHttpRequest >> Content-Length 152 >> >> But, i'm always working with iso-8859-1 encoding, my page include >> headers with the good charset, php.ini is set to the good default charset. >> >> So, when i retrieve the $_POST, i've to utf8_decode() cause utf8 datas >> are retrieved and special chars as "é", "à" are not recognised >> >> I think I shouldn't have to do that... >> >> Here's the test.html file : >> >> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >> "http://www.w3.org/TR/html4/loose.dtd"> >> <html> >> <head> >> <meta http-equiv="Content-Type" content="text/html; >> charset=ISO-8859-1"> >> <title>Test encoding</title> >> <script type="text/javascript" language="javascript" >> src="jquery-1.2.6.js"> >> </script> >> </head> >> <body> >> <form enctype="application/x-www-form-urlencoded; >> charset=ISO-8859-1" action="test.php" name="search" method="post"> >> <input id="qry" name="qry" value="" type="text" /><input >> type="button" onclick="send();" value="ok" /> >> </form> >> <div id="answers"> >> </div> >> <script type="text/javascript" language="javascript"> >> >> function send(){ >> $.ajax({ >> type: "POST", >> url: "./test.php", >> contentType: "application/x-www-form-urlencoded; >> charset=iso-8859-1", >> data: { >> qry: $('#qry')[0].value >> }, >> success: function(data){ >> $('#answers').empty().append(data); >> return; >> } >> >> }); >> } >> </script> >> </body> >> </html> >> >> And the test.php : >> >> <?php >> header("Content-Type: text/html; charset=ISO-8859-1"); >> var_dump($_POST); >> ?> >> >> Thanx for the help ! >> >> -- >> Romain Viovi >> 42 rue Pigalle >> 75009 Paris >> >> +33 6 63 16 90 15 >> +33 9 54 40 84 40 >> >> romain.vi...@gmail.com