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

PHP & Base de données Discussion :

Encodage de caractère [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut Encodage de caractère
    Bonjour à tous,

    je travail actuellement sur un site full utf8. J'entends par là l'interclassement de la base , l'encodage de mon fichier php et l'entête envoyer au navigateur :

    Interclassement : utf8_general_ci
    Et meta :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    Or lorsque j'affiche des entrées de ma table sur ma page web (alimentée via phpmyadmin) j'ai le droit au caractère ? à la place de mes accents.

    J'ai deux solutions :

    - Soit truffer mon code utf8_encode/decode()
    - Soit lancer un 'SET CHARACTER SET utf8' en haut de chacune de mes pages faisant appelle à la bdd.

    Ai je raté quelque chose pour me permettre d'afficher mes données sans "artifice" ?
    Le problème peut il venir de phpmyadmin qui fausse les données rentrée ?

    Merci
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Soit lancer un 'SET CHARACTER SET utf8'
    ce n'est pas un artifice, tu indiques a mysql le format des données.
    tu peux egalement definitivement le configurer dans ton my.cnf
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Je pensais pourtant que imposer un interclassement en utf8 me permettait d'avoir des données enregistrer au format utf8 nan ?
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    L'interclassement sert a classer et comparer des chaines de caracteres.

    ie :
    "AbC" par rapport à "abc"
    "niño" par rapport à "nino"
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti Avatar de Vetchostar
    Développeur Web
    Inscrit en
    Septembre 2005
    Messages
    51
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2005
    Messages : 51
    Par défaut
    tu peux aussi convertir ta base base de donné en utf8, et lorsque tu te connecte à ta base de donnée pour effectuer une requête il faut spécifier le charset utf8 et recupérer les infos en utf8.
    comme sa tu n'auras plus de problème avec ça. Il y'a une fonction iconv() qui le fait.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme d'encodage des caractères spéciaux
    Par pacoulitou24 dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 20/06/2006, 16h47
  2. Encodage de caractères
    Par Anduriel dans le forum Langage
    Réponses: 13
    Dernier message: 25/04/2006, 18h22
  3. Réponses: 15
    Dernier message: 24/02/2006, 14h17
  4. [FLASH 8] Encodage de caractères...
    Par Xdrei dans le forum Flash
    Réponses: 1
    Dernier message: 24/02/2006, 07h44
  5. encodage de caractères
    Par hugo123 dans le forum Langage
    Réponses: 7
    Dernier message: 25/01/2006, 15h04

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