Gå til innhold

[Løst] Problemer med encoding fra Flash


Anbefalte innlegg

Hei!

 

Lager en internasjonal greie hvor en Flash- side sender til et php- script som igjen setter inn data i MySQL. Dataene fra Flash- filen er i utf-8, php-filen er utf-8, og Collation er satt til til utf8_general_ci i databasen. Når jeg mottar variablene fra Flash- filen og kjører de i scriptet, vises de riktig, men når jeg setter de inn i db, blir de altså feil.

 

Prøver jeg å legge inn

 

ĀāČčĒēĢģĪīĶķĻļŅņŠšŪūŽžąčęėįšųūžÕõÜüÖöÄä

 

får jeg

 

Ä€ÄÄŒÄĒēĢģĪīĶķĻļŅņŠšŪūŽžąÄęėįšųūžÕõÜüÖöÄä

 

når jeg browser tabellen via phpMyAdmin. Legger jeg inn direkte i phpMyAdmin, har jeg mulighet til å skrive inn alle tegnene. Så hva kan være galt her? Supert om noen vet hva som er galt her. :!:

Endret av funkyboy
Lenke til kommentar
Videoannonse
Annonse

Det som er galt er at du ikke setter MySQL til å jobbe med input som UTF-8 internt.

SET NAMES 'utf8' COLLATE 'utf8_general_ci'

spesifiserer bare tegnsettet mellom server og klient. Skal man sikre at man faktisk lagrer ting som UTF-8 må

SET character_set_server='utf8'

til.

Lenke til kommentar
Det som er galt er at du ikke setter MySQL til å jobbe med input som UTF-8 internt.

SET NAMES 'utf8' COLLATE 'utf8_general_ci'

spesifiserer bare tegnsettet mellom server og klient. Skal man sikre at man faktisk lagrer ting som UTF-8 må

SET character_set_server='utf8'

til.

 

Ah, sånn å forstå! Takker så meget. :!:

 

echo mysql_client_encoding($conn); -> latin1

 

Kan desverre ikke gjøre dette, da det ligger en god del andre databaser på samme serveren, som er nødt til å være som de er. Men om jeg ikke får til dette, får jeg da lagret som utf-8, eller er jeg da nødt til å lagre som Latin1?

Lenke til kommentar
Det kan settes pr. tilkobling så du trenger ikke å endre noe på oppsettet. Det er rett og slett bare å kjøre de rett etter at du kobler til.

 

Ok, thanks again! Så om jeg kjører denne kommandoen, endrer jeg altså ingenting, annet enn i dette scriptet? Eller må jeg etter at jeg har utført nødvendige spørringer sette tilbake til latin1?

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...