Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Problema de codificação PHP/ODBC


Primeiro você tem a codificação do banco de dados. Então você tem a codificação usada pelo cliente ODBC.

Se a codificação de sua conexão de cliente ODBC não corresponder à do banco de dados, a camada ODBC irá transcodificar automaticamente seus dados, em alguns casos.

O truque aqui é forçar a codificação da conexão do cliente ODBC.

Para uma configuração "all UTF-8":
$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

Isso funciona perfeitamente com PostgreSQL + Php 5.x. O exato sintaxe e opções depende do fornecedor do banco de dados.

Você pode encontrar informações adicionais muito úteis e claras para o MySql aqui: http://dev.mysql.com/doc/refman/5.0/fr/charset-connection.html

espero que isto ajude.