Bonjour,
Je suis en html5 je déclare mon charset dans ma page
et également dans le htaccess
Code html : Sélectionner tout - Visualiser dans une fenêtre à part <meta charset="utf-8">
Pour la base je déclare utf-8 dans ma fonction connect
Code : Sélectionner tout - Visualiser dans une fenêtre à part AddDefaultCharset UTF-8
Ma page est donc en utf-8 et les accents qui ne viennent pas de ma base s'affichent correctement.
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 function connect() { global $ac_mysql_host,$ac_mysql_user,$ac_mysql_password,$ac_mysql_db; $this->link = mysql_connect($ac_mysql_host,$ac_mysql_user,$ac_mysql_password); mysql_query("SET NAMES 'utf8'"); mysql_query("SET CHARACTER SET utf8"); mysql_query("SET COLLATION_CONNECTION = 'utf8_unicode_ci'"); if($this->link) { if(mysql_select_db($ac_mysql_db)) { $this->connected = true; return true; } else { return false; } } else { return false; } }
Tout ce qui vient de ma base déforme les accents en ?
(les accents dans ma base sont en latin comme é et non pas é )
J'ai essayé de changer l'interclassement de la table et des champs de latin en utf et vise versa mais rien à faire les accents restent déformés...
Je suis obligé de mettre dans ma page
Mais cette solution est plus une rustine qu'on codage sérieux car set names 'utf8' se trouve déja dans ma fonction connect !
Code php : Sélectionner tout - Visualiser dans une fenêtre à part mysql_query("set names 'utf8'");
Ou puis je avoir un latin qui se balade pour que mes accents soit déformées en sortant de ma base ?
Merci
Partager