PDA

Volledige versie bekijken : Speciale karakters en XML


admiralfreezbee
%Europe/Berlin %400 %2005, 10:36
Ik weet dat dit al een paar keer gevraagd is, ik heb al wat gezocht maar nergens een oplossing gevonden. Ik heb een gastenboek die in MySQL opgeslagen staat. Via een PHP script maak ik een XML bestand aan.
Dat laad ik dan in via Flash en hier zit mijn probleem. Bij het weergeven van de tekst worden speciale karakters zoals é en ë niet mooi weergegeven. Vroeger waren het gewoon vierkantjes, ik heb nu al wat zitten prutsen en nu zijn het gewoon rare tekens zoals geïmproviseerde wat natuurlijk geïmproviseerde moet zijn.

Ik heb al embedding font geprobeerd maar dat deed niet veel, op dit moment codeer ik alles in mijn php script uiteindelijk via de functie utf8_encode naar utf8 en daarom krijg ik (denk ik) nu die rare tekens ipv vierkantjes.

In alle vorige posts las ik dat ik het bestand moet opslaan als utf8 maar ik denk dat dat niet zo makkelijk is aangezien het xml bestand eigenlijk gegenereerd wordt via php. Ook <?xml encode...?> vooraan er bij zetten zou niet helpen aangezien Flash dat negeert (dat heb ik gelezen op de Flah site).

mech7
%Europe/Berlin %424 %2005, 11:11
kan je niet gewoon de html code gebruiken &Agrave;

latino
%Europe/Berlin %589 %2005, 15:09
wat kan helpen is de nieuwste phpMyAdmin downloaden daarin un je als uft 8 opslaan (collatie)

McPoophead
%Europe/Berlin %818 %2005, 20:38
inderdaad , 'k had hetzelfde probeem. Gewoon utf 8 opslaan en in je php pagina via utf8_encode(mysql_result..... ophalen. dan haalt bij mij toch de xml juist binnen in flash.

De Kale
%Europe/Berlin %420 %2005, 11:06
als je mysql < 4.1 gebruikt kun je geen unicode karakters opslaan.
Daar ligt het probleem.
als je niet unicode karakters uitleest uit je database en iin je xml opslaat kan flash deze xml dus niet goed interpreteren.
roep je script maar eens aan dat de xml file genereert (bekijk de xml), dan zul je zien dat het niet aan je flash ligt.

Ea.Z
%Europe/Berlin %970 %2005, 00:18
haha!!! jaja, ik kan het weer!!
de database slaat de tekens wrs goed op (want de xml geeft het goed weer)
ik encode mijn xml utf-8
en toch!
toch krijg ik in Flash dit '&' als '&amp' te zien...

iemand een idee waar het kan aan liggen??
(nee mijn html staat niet aan in het dynamisch textvak:p)

latino
%Europe/Berlin %366 %2005, 09:47
Probeer eens de URL-codering te gebruiken. Dit betekent dat je van het karakter de hexadeciamle waarde nodig hebt. Voor het ampersandteken is dit %26

Je vervangt in je tekst het & teken door de code %26

Ea.Z
%Europe/Berlin %563 %2005, 14:31
oei!
had ik da nog nie gepost??
ja,
het was dus 20 minuten later opgelost na mijn laatste post hier... sry...

het probleem was dus dat ik mijn waarden uit mijn xml zo opriep

XMLvar=root.childNodes[0].childNodes[0]
dat gaf dan de '&amp' en '&apos' waarden...
het moest eiglijk zo
XMLvar=root.childNodes[0].childNodes[0].nodeValue
dan krijg je '&' en " ' "
toch bedank voor de help