Php problème d'encodage ?
Résolu/Fermé3 réponses
jojo673
Messages postés
210
Date d'inscription
lundi 19 septembre 2011
Statut
Membre
Dernière intervention
9 avril 2014
44
12 oct. 2011 à 13:51
12 oct. 2011 à 13:51
Bonjour,
Il faut tout d'abord que la page soit encodé en UTF8, le meilleur moyen de le savoir est d'ouvrir le fichier avec notepad++ onglet encodage, sinon les convertir en UTF8.
Ensuite il faut que la bdd soit également en UTF8, pour cela on peut par exemple utiliser cette manip :
Il faut tout d'abord que la page soit encodé en UTF8, le meilleur moyen de le savoir est d'ouvrir le fichier avec notepad++ onglet encodage, sinon les convertir en UTF8.
Ensuite il faut que la bdd soit également en UTF8, pour cela on peut par exemple utiliser cette manip :
$bdd= new PDO('mysql:host=localhost;dbname=test', 'root', '', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
j'alimente un peu mon post, je me suis rendu compte que le véritable problème n'étais pas vraiment comment été stocké les caractères dans la bdd mais plutot la facon de les sortir .
Donc est ce que lorque je fait mon echo je dois mettre la fonction utf8_encode puis decode ? ou autre chose ? afin de rendre lisible mon extraction ?
Donc est ce que lorque je fait mon echo je dois mettre la fonction utf8_encode puis decode ? ou autre chose ? afin de rendre lisible mon extraction ?
J'ai trouvé les réponses à mes questions, donc pour ceux qui aurai le même problème allez faire un tour sur ce sujet http://www.commentcamarche.net/forum/affich-7000255-probleme-utf-8-php-phpmyadmin
j'ai mis au bon format ma table avec les alter table et j'ai utilisé la fonction
utf8_decode($mavariable) .
j'ai mis au bon format ma table avec les alter table et j'ai utilisé la fonction
utf8_decode($mavariable) .
12 oct. 2011 à 14:13
Alors pour répondre à tes questions dans l'ordre :
Page encodé en UTF8 : j'ai cette ligne qui le fait <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
et pour la bdd voila ce qui y est écrit : MySQL
Serveur: localhost (localhost via TCP/IP)
Version du serveur: 5.1.53-community-log
Version du protocole: 10
Utilisateur: root@localhost
Jeu de caractères pour MySQL: UTF-8 Unicode (utf8)
12 oct. 2011 à 14:30
permet de dire que les caractères affichés sont en UTF8, mais si le fichier n'est pas encodé en UTF8 il y aura des problèmes d'affichage.