Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème d'interprétation des caractères spéciaux

entre les balises <script>..</script>

Sujet résolu
    14 janvier 2011 à 13:02:16

    Bonjour,

    j'ai un problème depuis que j'ai mis mon site en ligne (en local tout fonctionnait bien).

    Lorsque je récupère des données de la bdd et que je les affiche avec un simple echo, les caracctères spéciaux s'affichent très bien.

    Si je les utilise dans un script javascript, les encodages html ne sont pas interpreté, ce qui fait qu'il s'affiche des &agrave; ou des &#039; etc.
    Ce que je ne comprends pas c'est qu'en local tout fonctionne bien :(

    Quelqu'un peut-il m'aider ?
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      14 janvier 2011 à 13:06:33

      tu a mis html_entity_decode() ?
      • Partager sur Facebook
      • Partager sur Twitter
        14 janvier 2011 à 13:29:17

        Bonjour,

        oui, je l'utilise en local et ça résout le problème mais lorsque je test sur mon serveur, j'obtient des caractères de ce style : <?>.
        Pourtant, dans le header de la page j'indique bien que l'encodage de la page se fait en utf-8, la bdd est configurée pour travailler en utf-8 et je décode les caractères spéciaux comme ceci : html_entity_decode($data[$mot1], ENT_QUOTES, 'UTF-8')

        J'ai vraiment du mal à voir d'où vient le problème ::(
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          14 janvier 2011 à 13:33:13

          moi je metterai juste

          <?php
          html_entity_decode($data[$mot1])
          


          Tu a bien remplacer dans ta base de donner genre é = &eacute; ?
          • Partager sur Facebook
          • Partager sur Twitter
            14 janvier 2011 à 13:37:25

            J'ai essayé comme ceci html_entity_decode($data[$mot1])
            aussi mais j'ai le même problème de <?>
            et oui dans ma bdd les caractères spéciaux s'affichent avec l'encodage html :)
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              14 janvier 2011 à 13:40:53

              dans ce cas la désolé je ne sais pas...
              • Partager sur Facebook
              • Partager sur Twitter
                14 janvier 2011 à 13:42:08

                Via javascript tu veux les affiche avec quoi tes caractères ?
                • Partager sur Facebook
                • Partager sur Twitter
                  14 janvier 2011 à 14:37:11

                  avec javascript je remplace les valeurs de input type="texte" lorsqu'on clique sur un bouton donné.

                  Et le problème est que si j'interprète (avec html_entity_decode) les caractères dans mon code javascript, j'ai des icones d'erreurs <?> à la place des accents lorsque j'affiche les mots
                  et si je ne les interprète pas j'ai les codes html des caractères spéciaux qui s'affiche, sans être interprétés.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    15 janvier 2011 à 22:56:40

                    Pour ceux que ça intéresse, j'ai trouvé sur Internet une fonction javascript qui décode les entités HTML. C'est pas très propre, mais ça fonctionne et c'est vraiment la seule façon de faire que j'ai trouvé :)

                    function html_entity_decode(str) {
                      var ta = document.createElement("textarea");
                      ta.innerHTML=str.replace(/</g,"&lt;").replace(/>/g,"&gt;");
                      toReturn = ta.value;
                      ta = null;
                      return toReturn
                    }
                    
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Problème d'interprétation des caractères spéciaux

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown