[PHP] Encodage de texte

Résolu
jimelfou Messages postés 143 Statut Membre -  
jimelfou Messages postés 143 Statut Membre -
Bonjour à vous,
J'ai un problème avec l'encodage du texte sur mon site web.
J'ai une base de donnée MySQL, et j'aimerais que mon texte passe d'un encodage à un autre.
Par exemple, présentement mes "é" sont écrit "& eacute;" mais je voudrais qu'ils deviennent "Ã ©".

J'aurais au moins besoin de connaître qu'elle est l'encodage de l'un et de l'autre pour trouver la bonne méthode de conversion. J'ai UTF8 encode/decode et html_entities, mais rien de concluant pour l'instant.

Merci de votre aide!

EDIT:
- Si dans mon formulaire j'écris "é" et que je le passe dans html_entities ça me donne "& eacute;"
- Si dans mon formulaire j'écris "é" et que je ne le passe pas dans html_entities ça me donne "Ã ©"

Conclusion, dans le 2e cas l'encodage serait celle de mon champ dans ma base de données?

3 réponses

  1. a70m Messages postés 3121 Statut Contributeur 217
     
    Salut,

    Ce lien pourra peut-être t'aider : https://www.commentcamarche.net/contents/489-caracteres-speciaux-html

    A+
    0
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Je n'ai pas très bien compris ton problème mais pour éviter les problèmes d'encodages en UTF-8 sans passer par les entités HTML (eacute, ...), il faut :

    - Encoder tes fichiers en UTF-8 avec ton éditeur
    - Ajouter la balise meta :
    <meta http-equiv="Content-type" contenu="text/html; charset=utf-8" />
    - Mettre les champs de ta base de données en utf8_bin ou utf8_general_ci
    0
  3. jimelfou Messages postés 143 Statut Membre 2
     
    J'ai finalement réussi en fait un html_entity_decode($string,ENT_QUOTES,'UTF-8');

    Avec ça ça prend le "& eacute" et ça le retransforme en é. Je peux donc le gérer à ma guise.

    Merci votre temps
    0