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
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  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 ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  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.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  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
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels 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++.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  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.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  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 ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  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é.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  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 ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

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