IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Publications (X)HTML et CSS Discussion :

Encoder son site en UTF-8 sans manquer une étape


Sujet :

Publications (X)HTML et CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut Encoder son site en UTF-8 sans manquer une étape
    Hello,

    Je vous présente mon nouveau tutoriel qui va vous guider dans le passage d'un site en UTF-8 en reprenant toutes les étapes à ne pas manquer, ainsi que les différentes alternatives en fonction de votre environnement de travail.

    N'hésitez pas à me faire part de vos remarques, questions et suggestions dans cette discussion.

    Bonne lecture à tous !

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Salut !

    Merci pour cet excellent (comme toujours ) tutoriel qui permettra à beaucoup de mieux comprendre la chaîne complète de l'encodage des caractères.
    Je pense que c'est effectivement une ressource qui manquait !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Par défaut

  4. #4
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    Bravo et merci pour ce document! On aura enfin un lien vers lequel pointer lorsque la question sera posée.

  5. #5
    Membre éclairé
    Inscrit en
    Mars 2004
    Messages
    291
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 291
    Par défaut
    Bravo pour cet article !

    Les explications sur l'encodage UTF8 general et unicode sur MySQL étaient bienvenues.
    Bien penser à en faire de même pour les traitements AJAX.

  6. #6
    Membre Expert Avatar de HiRoN
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 035
    Par défaut
    Citation Envoyé par Macmillenium Voir le message
    +1...
    Pensez à utiliser les ressources disponibles en Dev. Web :
    (x)HTML : Cours (X)HTML / FAQ (X)HTML
    CSS : Cours CSS / FAQ CSS / Galerie CSS
    Javascript : Cours / FAQ / Sources
    Mon site : Développeur Web Freelance

  7. #7
    Membre éprouvé Avatar de hansaplast
    Homme Profil pro
    Artisant logiciel
    Inscrit en
    Septembre 2005
    Messages
    950
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Artisant logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 950
    Par défaut
    Bonjours,

    j'ai deja subit un site qui tentait de faire de l'utf-8.
    Le probleme étant que, par exemple, les données reçues via post/get étaient en latin1. Sur ce site, il fallait donc faire des utf8_encode() à tout bout de champ...
    Par curiosité, ce memo résout-il le pb, et si oui, à quel niveau?
    (j'ai survolé l'article sans trouvé de réponse)

  8. #8
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    @hansaplast : Personnellement je n'ai vu aucun soucis de ce type dans mes tests. Les développeurs du site sur lequel tu bossais avaient dû louper une (ou plusieurs) étape, comme l'enregistrement du fichier en UTF-8 sans BOM par exemple.

    Si on prend ce code et qu'on enregistre le fichier en UTF-8 sans BOM, on peut voir qu'il n'y a pas de soucis d'accent :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <?php
    header( 'content-type: text/html; charset=utf-8' );
    ?>
    <!DOCTYPE html>
    <html>
    <head>
       <meta charset="utf-8" />
       <title>UTF-8</title>
    </head>
    <body>
     
    <pre>
       <?php
       print_r( $_POST );
       ?>
    </pre>
     
    <form action="" method="post">
       <p><input type="submit" value="Valeur accentuée" name="soumettre" /></p>
    </form>
     
    </body>
    </html>

    Après, comme dit dans mon tutoriel, si tu étais obligé d'utiliser utf8_encode() pour afficher correctement des caractères encodés en UTF-8, c'est que ton serveur renvoyait de l'ISO.

    Bref, plusieurs pistes à approfondir pour résoudre ton problème.

    Et si tu as l'occasion de démontrer qu'il manque quelque chose à ce niveau là dans le tutoriel avec un exemple que tu avais à l'époque et qui ne fonctionne toujours pas en ayant apporté les modifications nécessaires, tu peux toujours nous en faire part pour qu'on corrige le tutoriel.

  9. #9
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 66
    Par défaut
    Merci pour ce tuto ! Cela fait bien 4 ou 5 heures que je googelise dans tous les sens mon problème d'encodage pour une application XMLhttpRequest.

    Dans de nombreux autre sites on retrouve exactement les mêmes conseils, mais ce qui a fait la différence c'est le :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_set_charset( 'utf8' );
    Merci encore ; )

  10. #10
    Membre extrêmement actif
    Avatar de Muchos
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    1 704
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 704
    Billets dans le blog
    6
    Par défaut
    Tuto complet et pertinent vu le nombre de questions relatives à ce génial encodage.

    Quelques remarques néanmoins :
    1. Pourquoi proposer l'usage de utf8_decode() ? Si on passe en full utf8, transférer des données en utf8 vers de l'utf8 en passant par de l'ISO ne semble pas avoir d'intérêt, non ? Thelvin a aussi émis des doutes sur son utilisation, et ce n'est pas la première fois que j'en lis.
    2. Pour html5, cette déclaration suffit :
      Code html : Sélectionner tout - Visualiser dans une fenêtre à part
      <meta charset="utf-8" />

  11. #11
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Citation Envoyé par Muchos Voir le message
    1. Pourquoi proposer l'usage de utf8_decode() ? Si on passe en full utf8, transférer des données en utf8 vers de l'utf8 en passant par de l'ISO ne semble pas avoir d'intérêt, non ?
    Si tu relis bien, je ne propose utf8_decode() que comme une solution alternative, puisqu'en l'utilisant on ne dit pas au serveur d'afficher de l'UTF-8. La solution du header reste elle-même une alternative à la configuration Apache, configuration qui n'est malheureusement pas permise sur tous les serveurs (mutualisés).

    Et si je n'avais pas mis la solution uft8_decode(), on m'aurait dit "mais on peut faire comme ça aussi !", donc j'ai préféré prendre les devants, en disant que ce n'est pas la meilleure méthode pour gérer un site encodé en UTF-8.

    Ce tuto a de toute façon besoin de quelques rafraichissements, notamment pour parler de PDO.

Discussions similaires

  1. Encoder son site en UTF-8 sans manquer une étape
    Par Bisûnûrs dans le forum Balisage (X)HTML et validation W3C
    Réponses: 26
    Dernier message: 28/10/2012, 18h09
  2. Pouvoir modifier son site sans toucher au code via une interface
    Par openeyes dans le forum Général Conception Web
    Réponses: 5
    Dernier message: 04/11/2010, 12h09
  3. Lire XML encodé UTF-8 sans noeud
    Par Bobdelariege dans le forum VB.NET
    Réponses: 1
    Dernier message: 23/06/2010, 11h13
  4. Encoder son site en UTF-8 sans manquer une étape
    Par Bisûnûrs dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 12/09/2009, 10h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo