Mysql
 sql >> Datenbank >  >> RDS >> Mysql

PHP/ODBC-Kodierungsproblem

Zuerst haben Sie die Codierung der DB. Dann haben Sie die vom ODBC-Client verwendete Kodierung.

Wenn die Codierung Ihrer ODBC-Client-Verbindung nicht mit der der DB übereinstimmt, transcodiert die ODBC-Schicht Ihre Daten in einigen Fällen automatisch.

Der Trick dabei ist, die Kodierung der ODBC-Client-Verbindung zu erzwingen.

Für ein „all UTF-8“-Setup:

$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

Dies funktioniert perfekt mit PostgreSQL + Php 5.x. Die exakte Syntax und Optionen hängen vom DB-Anbieter ab.

Hier finden Sie sehr nützliche und klare Zusatzinformationen für MySql: http://dev.mysql.com/doc/refman/5.0/fr/charset-connection.html

hoffe das hilft.