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

Langage PHP Discussion :

convertir é en é


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut convertir é en é
    bonjour, je n'arrive pas a trouver de solution pour convertir les accents en caracteres HTML.

    j'ai fais ceci mais cela ne fonctionne pas, quelqu'un aurait une idée ?

    merci

    Code : 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
    24
    25
    26
    27
    function translate($chaine) {
    	$in = array("À", "Á", "Â", "Ã", "Ä", "Å", "à", "á", "â", "ã", "ä", "å", "Ò", "Ó", "Ô", "Õ", "Ö", "Ø", "ò", "ó", "ô", "õ", "ö", "ø", "È", "É", "Ê", "Ë", "è", "é", "ê", "ë", "Ç", "ç", "Ì", "Í", "Î", "Ï", "ì", "í", "î", "ï", "Ù", "Ú", "Û", "Ü", "ù", "ú", "û", "ü", "ÿ", "Ñ", "ñ", "ß", "Ą", "ą", "Ę", "ę", "Ł", "ł", "Ż", "ż");
     
    	$out = array("À", "Á", "Â", "Ã", "Ä", "Å", "à", "á", "â", "ã", "ä", "å", "Ò", "Ó", "Ô", "Õ", "Ö", "Ø", "ò", "ó", "ô", "õ", "ö", "ø", "È", "É", "Ê", "Ë", "è", "é", "ê", "ë", "Ç", "ç", "Ì", "Í", "Î", "Ï", "ì", "í", "î", "ï", "Ù", "Ú", "Û", "Ü", "ù", "ú", "û", "ü", "ÿ", "Ñ", "ñ", "ß", "Ą", "ą", "Ę", "ę", "Ł", "ł", "Ż", "ż");
     
    	foreach($in as $key => $value) {
    		$chaine = str_replace($in[$key], $out[$key], $chaine);
    	}
    	return $chaine;
    }
     
     
    // on recupere toute la base article
    $reqArticles = "SELECT id_article2, nom_article, resume_article, desc_article, conseil_utilisation_article, caracteristiques_article, point_fort_article, avis_article, supplement_article FROM articles_FR";
    $resArticles = mysql_query($reqArticles);
    while(list($id, $nom, $resume, $desc, $conseil, $carac, $pointfort, $avis, $supplement) = mysql_fetch_row($resArticles)) {
    	$nom = translate($nom);
    	$resume = translate($resume);
    	$desc = translate($desc);
    	$conseil = translate($conseil);
    	$carac = translate($carac);
    	$pointfort = translate($pointfort);
    	$avis = translate($avis);
    	$supplement = translate($supplement);
    	$reqUpArticle = "UPDATE articles_FR SET nom_article='$nom', resume_article='$resume', desc_article='$desc', conseil_utilisation_article='$conseil', caracteristiques_article='$carac', point_fort_article='$pointfort', avis_article='$avis' supplement_article='$supplement' WHERE id_article2='$id'";
    	//$resUpArticle = mysql_query($reqUpArticle);
    }

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Bonjour,

    tu as les fonctions htmlentities() et htmlspecialchars() pour ca

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    je sais mais ca ne marche pas !

    cela viendrait-il du fait que les données viennent d'une bdd ? j'ai mis latin german2 sur mes champs.

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Etant donné que tu nous montres un script ou tu ne l'utilises pas, je ne peux pas deviner que tu avais déjà essayé.

    Peux-tu nous montrer une chaine que tu fournies à htmlentities() par exemple et le résultat que tu obtiens ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    echo htmlspecialchars('sèche cheveux');

    resultat :

    </head><body>sèche cheveux</body></html>

    et pareil avec htmlentities !

    je suis en charset iso-8859-1

  6. #6
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    Ton fichier est peut etre en UTF8 lui.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    quel fichier ?

  8. #8
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    ton fichier .php

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    comment ca ?

  10. #10
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    un fichier texte a un format d'encodage propre.
    Tu peux le controler dans ton editeur ou avec notepad++.

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    oui il etait en utf-8 mais je les ai tous essayé ! et c'est pire avec les autres

  12. #12
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    Si tu affiches ton HTML en ISO, il faut convertir ton fichier en ANSI.

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    donc dans ma fonction il faut que je retape tous les caracteres vu qu'il me les met comme ca :

    $in = array("À", "Ã", "Â", "Ã", "Ä", "Ã…", "Ã*", "á", "â", "ã", "ä", "Ã¥", "Ã’", "Ó", "Ô", "Õ", "Ö", "Ø", "ò", "ó", "ô", "õ", "ö", "ø", "È", "É", "Ê", "Ë", "è", "é", "ê", "ë", "Ç", "ç", "ÃŒ", "Ã", "ÃŽ", "Ã", "ì", "Ã*", "î", "ï", "Ù", "Ú", "Û", "Ãœ", "ù", "ú", "û", "ü", "ÿ", "Ñ", "ñ", "ß", "Ä„", "Ä…", "Ę", "Ä™", "Å", "Å‚", "Å»", "ż");

  14. #14
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    non, avec notepad++ il faut utiliser "convertir".
    de plus ta fonction ne fait rien de plus que htmlentities() non ?

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    et non, meme en ANSI ca ne passe pas

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    le convertir me transforme les é en ù

  17. #17
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    fais attention : htmlspecialchars() ne travail pas entre les guillemets simples sans l'argument ENT_QUOTES

    le convertir me transforme les é en ù
    franchement je ne sais pas ce que tu fais mais chez moi avec notepad++ si j'ouvre un fichier avec un simple é, je le convertis dans n'importe quel encodage, le é n'a pas bougé.

  18. #18
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    bizarre moi ca me met plein de caracteres chelous j'y comprend plus rien

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 116
    Points : 55
    Points
    55
    Par défaut
    et sinon, je vais pas convertir des milliers de lignes dans le notepad ! une solution en php ?

  20. #20
    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
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu pourrais joindre ton fichier ici ?

Discussions similaires

  1. [PHP 5.2] Comment convertir les &eacute; &agrave; etc en é, à etc. ?
    Par Rollois dans le forum Langage
    Réponses: 3
    Dernier message: 11/01/2012, 19h01
  2. Réponses: 3
    Dernier message: 22/09/2011, 11h14
  3. Réponses: 1
    Dernier message: 13/04/2010, 22h13
  4. Réponses: 5
    Dernier message: 29/05/2008, 15h23

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