Først har du kodningen af DB. Så har du den kodning, der bruges af ODBC-klienten.
Hvis kodningen af din ODBC-klientforbindelse ikke stemmer overens med DB'en, vil ODBC-laget automatisk omkode dine data, i nogle tilfælde.
Tricket her er at tvinge indkodningen af ODBC-klientforbindelsen.
For en "alle UTF-8" opsætning:
$conn=odbc_connect(DB_DSN,DB_USR,DB_PWD);
odbc_exec($conn, "SET NAMES 'UTF8'");
odbc_exec($conn, "SET client_encoding='UTF-8'");
// processing here
Dette fungerer perfekt med PostgreSQL + Php 5.x. Den nøjagtige syntaks og muligheder afhænger af DB-leverandøren.
Du kan finde meget nyttig og tydelig yderligere information om MySql her: http://dev.mysql.com/doc/refman/5.0/fr/charset-connection.html
håber dette hjælper.