03. april 2011 - 21:17Der er
11 kommentarer og 1 løsning
Uforståeligt encoding problem
Jeg har et bette problem:
Jeg har en mysql database med tabel + attribut sat til utf8_unicode_ci, men når jeg henter data fra tabellen så får jeg de famøse firkanter i stedet for æ, ø og å.
min phpfil ser således ud: <!DOCTYPE html> <html> <head> <title>Projektoversigt</title> <meta charset="UTF-8"> </head> <body> <?php
Det der undrer mig er at jeg aldrig har haft dette problem før.
Mine prøvedata er lagt i tabellen via phpmyadmin interfacet, men det er sikkert der problemet opstår. Jeg har smidt en formular på siden og det virker som det skal.
Min phpmyadmin er sat til utf8_unicode_ci i collation, og alle tabeller og attributter ligeså, så input burde håndteres korrekt via interfacet.
Mit IDE gemmer filerne som UTF-8.
Mine sider har forsøgt alle former for encoding tags
Data sendt via formularer på siden til databasen håndteres korrekt, så jeg lader bare være med at bruge phpmyadmin til at indsætte data, og det ser ud til at virke.
Hvad databasen er sat til, og hvad websiderne (din og phpmyadmin) er sat til, er to forskellige ting. Jeg siger, at de websider hvor du indtaster data også skal være sat til UTF-8.
"Min phpmyadmin er sat til utf8_unicode_ci i collation, og alle tabeller og attributter ligeså, så input burde håndteres korrekt via interfacet." >> Nøøhhh ... ikke nødvendigvis.
Hvilken meta er skrevet i PHPMyAdmins dokumenter? Og hvilket tegnsæt er dens dokumenter gemt med? Som Erik nævner, har vi på Eksperten ofte set problemer med netop PHPMyAdmin og dets encoding.
Hvis du hælder data i DB'en via et dokument med en ISO-meta - eller som er gemt som ANSI, så vil indholdet af DB'en ikke være Unicode ... uanset, hvad DB'en er sat til. Garbage in - garbage out! *o)
Det tyder på at min hosts opsætning af phpmyadmin der er skyld i problemerne. For der er ingen problemer når jeg selv indsætter og udtrækker data udenom phpmyadmin.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.