Problème d'encodage de caractère

Fermé
zakou3 - 7 oct. 2015 à 17:48
 Utilisateur anonyme - 7 oct. 2015 à 17:59
Bonjour,
J'ai un problème d'affichage.ma base de données est encodée en utf8_general_ci et mes pages php sont encodées en utf8 (sans BOM) mais les textes provenant de la base de données s'affichent mal.Par exemple le "ç" s'affiche sous la forme d'un point d'interrogation "?".Comment vais-je résoudre ce problème ?
A voir également:

1 réponse

Bonjour

Exécutes-tu la commande "SET NAMES utf8" lors de la connexion à ta base de données ?
Si tu utilises PDO, ta connexion devrait ressembler à ça :
$pdo = new PDO(
    "mysql:host=$host;dbname=$nombase",
    $user,
    $pass,
    array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8",
          PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
          PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC )
    );

(les options ERRMODE_EXCEPTION et FETCH_ASSOC sont des préférences personnelles, tu n'es pas obligé de les mettre)

Note que si les données ont été enregistrées de manière erronée dans la base, ça ne va pas les réparer.
0