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 :

[Système] Conversion en entites html et caracteres etranges


Sujet :

Langage PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    489
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 489
    Points : 388
    Points
    388
    Par défaut [Système] Conversion en entites html et caracteres etranges
    Bonjour,

    J'analyse un paquet de fichiers html pour les encoder en entites html..
    Le probleme vient de certains caracteres qui semblent .. retifs ?

    Deux exemples :

    Je n'arrive pas a remplacer ces caracteres par des apostrophes normales ou des tirets tout simples..

    Pourtant, mes chaines passent a travers ces filtres la :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    		$paragraphe = str_replace('•', '-', $paragraphe);
    		$paragraphe = str_replace('’', '\'', $paragraphe);
    		$paragraphe = html_entity_decode($paragraphe);
    		$paragraphe = strip_tags($paragraphe, '<br><br/>');
    		//$paragraphe = addslashes($paragraphe);
    		$paragraphe = htmlentities($paragraphe, ENT_QUOTES, 'iso-8859-15');
    		$paragraphe = str_replace('&amp;', '&', $paragraphe);
    		$paragraphe = str_replace('&lt;', '<', $paragraphe);
    		$paragraphe = str_replace('&gt;', '>', $paragraphe);

    j'ai essaye avec iconv, sans plus de resultats...
    comment faire ?

  2. #2
    Membre confirmé Avatar de yjuliet
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Août 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 362
    Points : 460
    Points
    460
    Par défaut
    es-tu certain d'avoir utilisé le même encodage dans tes filtres que dans les fichiers HTML que tu analyses ????

    Si les fichiers sont en UTF8 et que ton filtre est en iso8859-15 (ou n'importe quoi d'autre d'ailleurs), les caractères, bien qu'apparaissant à l'écran comme identiques, ne seront, sur un point de vue binaire, pas équivalents. Du coup, tu n'auras pas concordance dans ton test et aucune correction ne sera apportée...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    489
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 489
    Points : 388
    Points
    388
    Par défaut
    he bien ca c'est un des problemes.. certains de ces fichiers sont en utf-8, d'autres en iso-8859-1.. et certains proviennent de word 2000 (argh..) donc tout mon souci consiste a faire passer tout ca sous un seul encodage, a priroi, utf-8 pour tout le monde... Mais en plus, ce sont des fragments html, sans declaration d'encodage, et je ne sais pas comment analyser le fichier pour detecter ca et faire une transformation correcte..
    Et Ce sont surtout ces deux caracteres qui me posent problemes, quoi que je fasse...

    J'ai copie colle le caractere en question dans ultraedit (il apparait comme un carré .. caractere non reconnu) et quand je regarde la source hexadecimale, il apparait comme ca :

    ýÿ ou encore FD FF...

    Et je dois bien avouer que si y'a un truc qui m'enerve souvent avec php, c'est l'encodage !

  4. #4
    Membre confirmé Avatar de yjuliet
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Août 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 362
    Points : 460
    Points
    460
    Par défaut
    es-tu forcé d'utiliser PHP pour ces modifications ???

    Il existe des softs qui font ça très bien (pour tout passer en UTF 8) (beyond compare, il me semble doit le faire et permet de faire du traitement de fichiers par lot)

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    489
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 489
    Points : 388
    Points
    388
    Par défaut
    Ah, ca pourrait etre une solution, je vais regarder ce soft

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

Discussions similaires

  1. Fonction conversion des caractères spéciaux en entités HTML
    Par JustyDark dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/04/2015, 18h19
  2. Conversion entité HTML
    Par omelhor dans le forum Langage
    Réponses: 2
    Dernier message: 15/11/2011, 17h42
  3. Réponses: 1
    Dernier message: 26/09/2007, 19h38
  4. Conversion entité html provenant d'une base
    Par zulot dans le forum Langage
    Réponses: 5
    Dernier message: 01/02/2007, 11h15
  5. [MSXML] Comment empécher la conversion des entités ?
    Par nima dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 08/11/2002, 14h14

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