Mmm, well the page type is: <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
Not sure what the DB is (its a mySQL DB) ... and I'm sure thats ok, cos if I convert the charachters via a few lines of perl code, then it works fine... I think I'm just gonna have to admit defeat, and just use the perl code I worked out the other day - not the ideal solution though :( Thanks for trying though! Cheers Andy On Jan 12, 1:08 pm, "Jonathan Vanherpe (T & T NV)" <jonat...@tnt.be> wrote: > I'm not sure what else there is, I never change character sets and set > everything to UTF-8 just to avoid the mess you're having. > > The only advice I can give you is to make sure everything's set to the > same character set (your html, your js, your database, your php source > files, ...) > > Then try to figure out where the conversion happens with firebug (set > some console.log(var) markers in your code, look at the headers, etc... > > Or post a link to a test case that shows the problem so we can have a > direct look at it. > > Jonathan > > > > youradds wrote: > > Mmm, changing to that works - but the error is still there with the > > unlat charachters :( > > > On Jan 12, 12:40 pm, "Jonathan Vanherpe (T& T NV)"<jonat...@tnt.be> > > wrote: > >> maybe it's because of the application/json part. I guess that should be > >> application/x-www-form-urlencoded or something. Just play with the > >> options you find here:http://docs.jquery.com/Ajax/jQuery.ajaxSetup > > >> Jonathan > > >> youradds wrote: > >>> Mmm, maybe that didn't work :/ > > >>> jQuery.ajaxSetup({ scriptCharset: "ISO-8859-1" , > >>> contentType: > >>> "application/json; charset=ISO-8859-1"}); > >>> jQuery.post("/cgi-bin/unterricht/review.cgi", { > >>> Review_Rating: the_rating, > >>> ID: theID, > >>> add_this_review: 1, > >>> Review_Contents: contents, > >>> Review_Subject: subject, > >>> Review_ByLine: byline, > >>> Review_GuestName: guestname, > >>> Review_GuestEmail: guestemail, > >>> add_review: 1, > >>> SecurityImage: SecurityImage, > >>> SessionID: SessionID > > >>> }, function(response){ > > >>> jQuery('#ajax_rate_indicator').fadeOut(); > >>> setTimeout("finishAjaxReview('the_rating_box', '"+escape > >>> (response)+"')", 400); > >>> }); > > >>> The script is called ok, but it doesn't pass any of the paramaters - > >>> the POST values passed in are simple $VAR1 = {}; (i.e nothing was > >>> passed it?) > > >>> TIA > > >>> Andy > > >>> On Jan 11, 3:54 pm, "Jonathan Vanherpe (T& T NV)"<jonat...@tnt.be> > >>> wrote: > >>>> actually, putting this once somewhere in your script should fix it: > >>>> $.ajaxSetup({ scriptCharset: "ISO-8859-1" , contentType: > >>>> "application/json; charset=ISO-8859-1"}); > > >>>> but still, you'll make your life easier if you just go for a completely > >>>> utf-8 workflow. > > >>>> Jonathan > > >>>> Jonathan Vanherpe (T& T NV) wrote: > > >>>>> this seems to answer your question somewhat: > >>>>>http://stackoverflow.com/questions/26620/how-to-set-encoding-in-getjs... > > >>>>> although I'd personally recommend to just use utf-8 for everything (so > >>>>> making your website and database use utf-8) > > >>>>> Jonathan > > >>>>> youradds wrote: > >>>>>> Anyone got any suggestions? This is the last bug I've gotta squish :/ > > >>>>>> TIA > > >>>>>> Andy > > >>>>>> On Jan 11, 9:18 am, youradds<andy.ne...@gmail.com> wrote: > >>>>>>> I found a way to do this in the .cgi script - but obviously I'd prefer > >>>>>>> to do it vai the AJAX submission, instead of having to encode it > >>>>>>> properly at the server end :) > > >>>>>>> my $contents = $IN->param('Review_Contents'); > >>>>>>> $contents =~ s/([\200-\377]+)/from_utf8({ -string => $1, - > >>>>>>> charset => 'ISO-8859-1'})/eg; > >>>>>>> $IN->param('Review_Contents' => $contents ); > > >>>>>>> TIA > > >>>>>>> Andy > > >>>>>>> On Jan 11, 8:15 am, youradds<andy.ne...@gmail.com> wrote: > > >>>>>>>> Hi, > > >>>>>>>> Got a bit of a weird one here :/ > > >>>>>>>> The following code works fine: > > >>>>>>>> jQuery.post("/cgi-bin/review.cgi", { > >>>>>>>> Review_Rating: the_rating, > >>>>>>>> ID: theID, > >>>>>>>> add_this_review: 1, > >>>>>>>> Review_Contents: contents, > >>>>>>>> Review_Subject: subject, > >>>>>>>> Review_ByLine: byline, > >>>>>>>> Review_GuestName: guestname, > >>>>>>>> Review_GuestEmail: guestemail, > >>>>>>>> add_review: 1, > >>>>>>>> SecurityImage: SecurityImage, > >>>>>>>> SessionID: SessionID > >>>>>>>> }, function(response){ > > >>>>>>>> jQuery('#ajax_rate_indicator').fadeOut(); > >>>>>>>> setTimeout("finishAjaxReview('the_rating_box', '"+escape > >>>>>>>> (response)+"')", 400); > >>>>>>>> }); > > >>>>>>>> ...*appart* from the fact stuff like: > > >>>>>>>> = > >>>>>>>> = > >>>>>>>> = > > >>>>>>>> ..gets converted to: > > >>>>>>>> = > >>>>>>>> = > >>>>>>>> = > > >>>>>>>> I did a little bit of research, and found something about adding this > >>>>>>>> (but this seems to really be for a different jQuery function - which > >>>>>>>> is probably why its not working); > > >>>>>>>> contentType: "application/x-www-form- > >>>>>>>> urlencoded;charset=ISO-8859-15", > > >>>>>>>> Can anyone suggest how I could fix this issue with foreign > >>>>>>>> charachters? > > >>>>>>>> TIA > > >>>>>>>> Andy > > >>>> -- > >>>> Jonathan Vanherpe - Tallieu& Tallieu NV - jonat...@tnt.be > > >> -- > >> Jonathan Vanherpe - Tallieu& Tallieu NV - jonat...@tnt.be > > -- > Jonathan Vanherpe - Tallieu & Tallieu NV - jonat...@tnt.be