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 :

htmlentities : la fonction déconne [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé Avatar de sami_c
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Mai 2002
    Messages
    763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Directeur des systèmes d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 763
    Par défaut htmlentities : la fonction déconne
    Salut,
    Dans mon script PHP, je récupère des données depuis ma bdd mysql dans une variable x et je l'affiche (dans une boucle) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ...
    echo htmlentities($x); 
    ...
    Le pb c'est que quand il y a des caractère spéciaux l'affichage déconne, par exemple, si le texte en provenance de la bdd est Qualité j'obtiens Qualité !!!
    C'est quoi le pb ? sachant que quand je change le codage au niveau de mon navigateur je n'ai plus de pb (cependant dans le codes source j'ai bien un 'é' et non pas un 'é') !! j'ai aussi remarqué que dans ma bbd, l'interclassement de toutes les table est "latin1_swidich_ci", je ne sais pas ce que ça veut dire ...

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Par défaut
    C'est pas htmlentities qui marche pas bien mais l'encodage qui doit pas aller dans ton process. Il faut veiller à ce que l'encodage soit conservé à toutes les étapes. Dans l'entete de la page html, dans l'interclassement de la bdd, dans l'éditeur de texte que tu as peut etre utilisé pour importer ta bdd, etc...
    Vérifie donc l'ensemble de l'encodage à toutes les étapes et essaie d'uniformiser le tout et ça devrait rouler.

  3. #3
    Membre chevronné Avatar de alceste
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 318
    Par défaut
    ou utilise utf8_decode() directement sur la chaîne qui te pose soucis

  4. #4
    Membre éclairé Avatar de sami_c
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Mai 2002
    Messages
    763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Directeur des systèmes d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 763
    Par défaut
    Citation Envoyé par alceste Voir le message
    ou utilise utf8_decode() directement sur la chaîne qui te pose soucis
    ça n'a pas marché, maintenant il m'affiche
    Qualit?
    au lieu de
    Qualit&eactue;

    Raideman >>
    Je n'ai pas compris qu'est ce que je dois faire !! Que dois-je mettre comme encodage dans ma bdd ?

  5. #5
    Membre émérite Avatar de |PaRa-BoL
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 738
    Par défaut
    C'est simple :

    Soit partout de l'ISO, soit partout de l'UTF-8 (meta, bdd, apache, ...)

  6. #6
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Par défaut
    Sinon utilise ce ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    htmlentities(utf8_decode($tavariable));
    ou ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    htmlentities(utf8_decode($tavariable),ENT_QUOTES,'ISO-8859-1');
    J'espere que çà répondra à ta question

  7. #7
    Membre éclairé Avatar de sami_c
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Mai 2002
    Messages
    763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Directeur des systèmes d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 763
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    htmlentities(utf8_decode($tavariable));
    ça a marché je n'ai pas touché à la bdd !! MERCI

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

Discussions similaires

  1. Fonction inverser de htmlentities ?
    Par WagaSeb dans le forum Langage
    Réponses: 3
    Dernier message: 21/06/2007, 19h37
  2. Que fait la fonction htmlentities ?
    Par Ravaka dans le forum Langage
    Réponses: 16
    Dernier message: 10/04/2007, 17h56
  3. [FTP] Faille de la fonction htmlentities
    Par Pahcixam dans le forum Langage
    Réponses: 49
    Dernier message: 18/10/2006, 10h33
  4. [Débutant] Pourquoi ma fonction déconne ?
    Par clampin dans le forum C
    Réponses: 2
    Dernier message: 16/07/2006, 10h57
  5. Fonction équivalente à htmlentities sous MySQL
    Par navis84 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 29/05/2006, 13h41

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