MySQL si PHP probleme cu encodarea UTF-8?

Zilele trecute in timp ce lucram la un dictionar roman-rus, mi-a dat bataie de cap charset-ul. Dupa lungi seri de googleala am gasit solutia la problema mea.

Sa va explic cum statea treaba. Aveam totul encodat in UFT-8:

1. pagina html avea in zona head structura

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

2. Pagina de php(stuructura de mai jos trebuie adaugata sus de tot):

<?php header("Content-type: text/html; charset=utf-8");?>

3.Pagina era si ea  encodata in UTF-8

Daca pagina are continut foloseste Convert to Utf-8.
Eu folosesc UTF-8 without BOM pentru ca apare o problema destul de enervanta. In momentul in care incluzi pe aceeasi pagina fisiere cu encodari diferite(EX Ansi si UTF-8) se mai introduce un rand gol(un fel de <br/> ) in fata fisierului cu UTF-8 simplu

4 In mysql am setat urmatoarea structura:
CREATE DATABASE DEFAULT CHARSET utf8 COLLATE utf8_bin;
pentru a vedea encodarea bazei,tabelului tastati:
show create database ;
show create table;

sau daca aveti baza de date deja creata si are o alta encodare puteti folosi.
ALTER DATABASE CHARACTER SET utf8;

You can follow any responses to this entry through the RSS 2.0 feed.You can leave a response, or trackback from your own site.

Leave a Comment