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
Code php : Sélectionner tout - Visualiser dans une fenêtre à part mysql_query("set names 'utf8'");car set names 'utf8' se trouve déja dans ma fonction connect !
Ou puis je avoir un latin qui se balade pour que mes accents soit déformées en sortant de ma base ?
Merci
Partager