Problème de charset PHP<->MySQL

Résolu
0tdf8GM Messages postés 26 Date d'inscription   Statut Membre Dernière intervention   -  
0tdf8GM Messages postés 26 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis en train de développer un site Internet. Cependant, j'ai un gros problème d'encodage. Le code HTML ne pose aucun problème, même avec des accents, par contre, ça se gâte au niveau du PHP-MySQL. Lorsque je fais une requête dans la base de données et que j'affiche le résultat, tout les accents sont remplacés par des <?>.

Je ne sais pas d'où sa vient ! Une idée ? Merci

3 réponses

  1. Tomy2e Messages postés 1041 Statut Membre 864
     
    Bonjour, avez vous toujours ces problèmes d'encodage après avoir utilisé la requête MySQL "SET NAMES UTF8" ?

    Pour l'utiliser:
    EN PDO:
    $variablePDO->query("SET NAMES UTF8");
    (remplacer $variablePDO par la variable que vous avez connecté à votre base)
    OU:
    mysql_query("SET NAMES UTF8");
    1
  2. 0tdf8GM Messages postés 26 Date d'inscription   Statut Membre Dernière intervention  
     
    Merci pour ta réponse.

    Cela règle effectivement mon problème, merci !

    Par contre, que fait cette requête ? J'ai pourtant bien défini l'utilisation de l'UTF-8 au sein de ma base de données ET du serveur My-SQL.
    0
    1. Mihawk Messages postés 4753 Statut Contributeur 846
       
      L'encodage est une chose bien mystérieuse.
      0
    2. logisticien
       
      Il y a plusieurs sortent d'UTF-8

      https://fr.wikipedia.org/wiki/UTF-8
      0
    3. Utilisateur anonyme
       
      Les mystères sont expliqués dans les docs...
      L'encodage précisé par SET NAMES n'est ni celui des bases de données (qui peut être différent pour chaque champ de chaque table de chaque base d'un même serveur), ni celui de la page html(dont la base de données se moque éperdument), mais celui du dialogue entre l'application (php) et le serveur de base de données
      0
    4. Mihawk Messages postés 4753 Statut Contributeur 846
       
      Tous les UTF-8 partagent la même base sinon cela ne servirait plus à rien
      0
    5. Utilisateur anonyme
       
      Il n'existe qu'un seul UTF-8. L'article de Wikipedia dit bien : "Ces variantes ne doivent pas être appelées « UTF-8 »."
      0
  3. 0tdf8GM Messages postés 26 Date d'inscription   Statut Membre Dernière intervention  
     
    Merci pour vos réponses.

    Bon week-end.
    0