Salut,

Voilà j'ai un probleme dans mon systeme de news quand je met des accents (é,è,ê) ceci sont remplacé par des points d'interrogation..

L'interclassement de ma base de donée est pourtant en utf8_general_ci, et mes script son encodé en UTF-8 comme les doctype de mes pages.

Donc je comprends pas...

8 réponses


PhiSyX
Réponse acceptée

Hello, l'utf-8 est très mal géré par PHP..

Essaye ceci :

// mysql
mysql_query('SET NAMES utf8');

ou

// PDO
$taVarPDO->exec('SET NAMES utf8');
creataddict
Réponse acceptée

Si non :

$DB = new PDO('mysql:host=localhost;dbname=test ;charset=UTF-8', 'root', '');

Tu codes sous quel éditeur ? Si tu es sous Komodo vérifie bien que tes pages sont en UTF-8 (clic droit/Properties and Settings/Encoding => UTF-8

Sinon mets ta base de données en utf_unicode_ci

arnak34
Auteur

Je code avec notepad++ (utf-8 ou utf-8 sans bom) selon les pages.

Pour ma base de donnée je l'ai mis en unicode comme tu as dis mais le problème et le même j'ai toujours les points d'interrogations dans les news http://www.commandofireskull.fr et dans l'interface d'administration après soumission quand je réouvre la news pour la modifier.

arnak34
Auteur

Je test ca dans les jours qui viennent et je te dis ca !

Merci phisyx

arnak34
Auteur

Ça fonctionne merci beaucoup =)

Marque en résolu

Bonjour,

J'ai le même problème d'un exercice que j'ai fait avec la Bdd ce qui ma réglé le problème c'est ceci :

$bdd = new PDO ('mysql:host=localhost;dbname=test;charset=utf8', 'root', '');