sql >> Databáze >  >> RDS >> Mysql

Problém s kódováním PHP/ODBC

Nejprve máte kódování DB. Pak máte kódování používané klientem ODBC.

Pokud se kódování vašeho připojení klienta ODBC neshoduje s kódováním v databázi, vrstva ODBC v některých případech automaticky překóduje vaše data.

Trik je zde vynutit kódování klientského připojení ODBC.

Pro nastavení "vše 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

Toto funguje perfektně s PostgreSQL + Php 5.x.The exact syntaxe a možnosti závisí na dodavateli DB.

Velmi užitečné a jasné dodatečné informace pro MySql můžete najít zde: http://dev.mysql.com/doc/refman/5.0/fr/charset-connection.html

doufám, že to pomůže.



  1. Jak získat aktuální čas (bez časového pásma) v PostgreSQL

  2. Seznam území podporovaných databází Oracle

  3. TO_CHAR typu Oracle PL/SQL TABLE

  4. SQLAlchemy/MySQL Ztratilo se připojení k serveru MySQL během dotazu