|
Categorieën >
JavaScript
[opgelost]ajax - karakterencoding
bosgroen – 02/09/2006 17:54 (Laatst gewijzigd op 02/09/2006 21:24)
|
|
offline
|

PHP interesse
|
Oké, ik heb een klein probleempje met mijn ajax-script:
Ik stuur html-data van de server door naar het ajax-script, dit vang ik op en output ik direct in een div:
divke.innerHTML = myajax.responseText
divke.innerHTML = myajax.responseText
dit werkt perfect
maar het probleem zit hem erin dat alle 'ë' vervangen worden door een '?' (vermoedelijk tevens andere karakters)
Een oplossing dacht ik gevonden te hebben door mijn output op de server eerst om te zetten naar utf8.
echo utf8_encode ($tpl->getOutputContent());
Dan verschijnt wel degelijk een 'ë' op het scherm waar dat moet (html), behalve echter binnenin een tekstvak (dan krijg ik ë).
Wie weet raad? (misschien een utf8_decode function in JS?) |
5 antwoorden
|
|
|
offline
|
Erelid
|
Output naar de server eerst door htmlentities halen?
|
Richard – 02/09/2006 18:31 (Laatst gewijzigd op 02/09/2006 18:34)
|
|
offline
|
Crew algemeen
|
Ik zou utf8_encode gebruiken, en charset utf-8 gebruiken, dan weet je zeker dat het goed weergegeven wordt.
EDIT: had je al geprobeerd dus. werkt bij mij prima, dus snap t probleem niet;-)
|
bosgroen – 02/09/2006 19:07 (Laatst gewijzigd op 02/09/2006 19:51)
|
|
offline
|

PHP interesse
|
@murfy: je begrijpt het probleem niet
@JeXus, je bedoelt de html-file definiëren als utf-8, met of zonder maakt geen verschil uit (kheb een iso-8859-1)
ok, probleem ligt blijkbaar veel vroeger, de mysterieuze A> werd gevormd tijdens het het invoeren van de tekst (vroeger) eveneens via ajax.
Het is zo dat ik op javascript-niveau eerst: encodeURIComponent van de tekstvakinhoud doe, maar ik doe (nuja, deed) geen enkele decode.
Vraag: Welke php-functie te gebruiken voor de JS encodeURIComponent terug om te zetten?
|
|
|
|
offline
|
Crew algemeen
|
Jep, in HTML gewoon <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />. Werkt prima.
|
bosgroen – 02/09/2006 20:30 (Laatst gewijzigd op 02/09/2006 21:16)
|
|
offline
|

PHP interesse
|
Het laatste deel van mijn probleem loste ik op door: utf8_decode(urldecode($_POST['post'])) voordat ik de post-tekst toevoeg aan de database (en safequery enzo doe)
Nu lijkt alles te lukken.
|
Dit onderwerp is gesloten.
|
|
|