la problème est que lorsque j'ai un caractère accentué (par exemple) tidy
s'attend a le trouver en utf8 (ce qui est normal vu que ma page est en utf8)
sauf que parfois le caractère accentue est escapé en HTML ´ par
exemple et la rien ne va plus !
tidy n'arrive pas a remplacer ce caractère escapé par son equivalent UTF8 et
me renvoit un fichier plus ou moins foireux qui au final ne passe pas dans
un parser XML du php.
Quelqu'un a une idée, sauf a coder moi meme la fonction qui decode les
caractère escapé...
pour info, je ne peux évidement pas utiliser la fonction html_entity_decode
qui va aussi me decoder les caractère & !!!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Olivier Miakinen
[le] problème est que lorsque j'ai un caractère accentué (par exemple) tidy s'attend a le trouver en utf8 (ce qui est normal vu que ma page est en utf8) sauf que parfois le caractère accentue est escapé en HTML ´ par exemple et la rien ne va plus ! [...]
pour info, je ne peux évidement pas utiliser la fonction html_entity_decode qui va aussi me decoder les caractère & !!!
Sauf erreur, il te suffit d'appeler en séquence html_entity_decode et htmlspecialchars, dans un sens ou dans l'autre, pour décoder les caractères accentués mais pas les caractères spéciaux.
[le] problème est que lorsque j'ai un caractère accentué (par exemple) tidy
s'attend a le trouver en utf8 (ce qui est normal vu que ma page est en utf8)
sauf que parfois le caractère accentue est escapé en HTML ´ par
exemple et la rien ne va plus !
[...]
pour info, je ne peux évidement pas utiliser la fonction html_entity_decode
qui va aussi me decoder les caractère & !!!
Sauf erreur, il te suffit d'appeler en séquence html_entity_decode et
htmlspecialchars, dans un sens ou dans l'autre, pour décoder les
caractères accentués mais pas les caractères spéciaux.
[le] problème est que lorsque j'ai un caractère accentué (par exemple) tidy s'attend a le trouver en utf8 (ce qui est normal vu que ma page est en utf8) sauf que parfois le caractère accentue est escapé en HTML ´ par exemple et la rien ne va plus ! [...]
pour info, je ne peux évidement pas utiliser la fonction html_entity_decode qui va aussi me decoder les caractère & !!!
Sauf erreur, il te suffit d'appeler en séquence html_entity_decode et htmlspecialchars, dans un sens ou dans l'autre, pour décoder les caractères accentués mais pas les caractères spéciaux.
Etienne SOBOLE
Sauf erreur, il te suffit d'appeler en séquence html_entity_decode et htmlspecialchars, dans un sens ou dans l'autre, pour décoder les caractères accentués mais pas les caractères spéciaux.
Hum ben non. si tu html_entity_decode tu vas transformer les $lt; en < et la c'est fouttu !!!
nan ben en fait je codé la fonction a la main... ca marche pas trop mal.
tidy c'est bien, mais c'est pas non plus parfait !!! j'ai trouvé un site ou le gars avait mis une balide <script> il ne l'as pas fermé et derriere il a mis une balide <meta>
et ben les navigateurs vont ignorr la balise <script> alors que tidy va encoder byzarrement d'ailleurs tout ce qu'il y a derriere la balise <script>
Bon voila. ca reste quand meme un oulit sympa :)
a+ Etienne
Sauf erreur, il te suffit d'appeler en séquence html_entity_decode et
htmlspecialchars, dans un sens ou dans l'autre, pour décoder les
caractères accentués mais pas les caractères spéciaux.
Hum ben non.
si tu html_entity_decode tu vas transformer les $lt; en <
et la c'est fouttu !!!
nan ben en fait je codé la fonction a la main...
ca marche pas trop mal.
tidy c'est bien, mais c'est pas non plus parfait !!!
j'ai trouvé un site ou le gars avait mis une balide <script>
il ne l'as pas fermé et derriere il a mis une balide <meta>
et ben les navigateurs vont ignorr la balise <script> alors que tidy va
encoder byzarrement d'ailleurs tout ce qu'il y a derriere la balise <script>
Sauf erreur, il te suffit d'appeler en séquence html_entity_decode et htmlspecialchars, dans un sens ou dans l'autre, pour décoder les caractères accentués mais pas les caractères spéciaux.
Hum ben non. si tu html_entity_decode tu vas transformer les $lt; en < et la c'est fouttu !!!
nan ben en fait je codé la fonction a la main... ca marche pas trop mal.
tidy c'est bien, mais c'est pas non plus parfait !!! j'ai trouvé un site ou le gars avait mis une balide <script> il ne l'as pas fermé et derriere il a mis une balide <meta>
et ben les navigateurs vont ignorr la balise <script> alors que tidy va encoder byzarrement d'ailleurs tout ce qu'il y a derriere la balise <script>
Bon voila. ca reste quand meme un oulit sympa :)
a+ Etienne
Olivier Miakinen
Le 05/09/2007 12:39, Etienne SOBOLE me répondait :
Hum ben non. si tu html_entity_decode tu vas transformer les $lt; en < et là c'est foutu !!!
Les « < », je suppose. Mais tu as raison, ça ne marche pas.
nan ben en fait j'ai codé la fonction a la main... ca marche pas trop mal.
Ok.
tidy c'est bien, mais c'est pas non plus parfait !!! j'ai trouvé un site où le gars avait mis une balise <script> il ne l'as pas fermée et derrière il a mis une balise <meta>
eh ben les navigateurs vont ignorer la balise <script> alors que tidy va encoder bizarrement d'ailleurs tout ce qu'il y a derrière la balise <script>
Comme on dit, « Garbage In, Garbage Out ». Je ne vois pas pourquoi tous les navigateurs réagiraient comme tu le dis à ce code incorrect. Certains pourraient parfaitement faire comme tidy, et interpréter bizarrement tout ce qui (selon eux) se trouve dans un élément script.
Le 05/09/2007 12:39, Etienne SOBOLE me répondait :
Hum ben non.
si tu html_entity_decode tu vas transformer les $lt; en <
et là c'est foutu !!!
Les « < », je suppose. Mais tu as raison, ça ne marche pas.
nan ben en fait j'ai codé la fonction a la main...
ca marche pas trop mal.
Ok.
tidy c'est bien, mais c'est pas non plus parfait !!!
j'ai trouvé un site où le gars avait mis une balise <script>
il ne l'as pas fermée et derrière il a mis une balise <meta>
eh ben les navigateurs vont ignorer la balise <script> alors que tidy va
encoder bizarrement d'ailleurs tout ce qu'il y a derrière la balise <script>
Comme on dit, « Garbage In, Garbage Out ». Je ne vois pas pourquoi
tous les navigateurs réagiraient comme tu le dis à ce code incorrect.
Certains pourraient parfaitement faire comme tidy, et interpréter
bizarrement tout ce qui (selon eux) se trouve dans un élément script.
Le 05/09/2007 12:39, Etienne SOBOLE me répondait :
Hum ben non. si tu html_entity_decode tu vas transformer les $lt; en < et là c'est foutu !!!
Les « < », je suppose. Mais tu as raison, ça ne marche pas.
nan ben en fait j'ai codé la fonction a la main... ca marche pas trop mal.
Ok.
tidy c'est bien, mais c'est pas non plus parfait !!! j'ai trouvé un site où le gars avait mis une balise <script> il ne l'as pas fermée et derrière il a mis une balise <meta>
eh ben les navigateurs vont ignorer la balise <script> alors que tidy va encoder bizarrement d'ailleurs tout ce qu'il y a derrière la balise <script>
Comme on dit, « Garbage In, Garbage Out ». Je ne vois pas pourquoi tous les navigateurs réagiraient comme tu le dis à ce code incorrect. Certains pourraient parfaitement faire comme tidy, et interpréter bizarrement tout ce qui (selon eux) se trouve dans un élément script.
Etienne SOBOLE
Comme on dit, « Garbage In, Garbage Out ». Je ne vois pas pourquoi tous les navigateurs réagiraient comme tu le dis à ce code incorrect. Certains pourraient parfaitement faire comme tidy, et interpréter bizarrement tout ce qui (selon eux) se trouve dans un élément script.
Ah oui, il pourrait, mais ca semble pas être le cas. enfin bon pas tres grave. ca ne touche que tres peu de pages, qui passent donc a la trappe d'une remise en forme !!!
Etienne
Comme on dit, « Garbage In, Garbage Out ». Je ne vois pas pourquoi
tous les navigateurs réagiraient comme tu le dis à ce code incorrect.
Certains pourraient parfaitement faire comme tidy, et interpréter
bizarrement tout ce qui (selon eux) se trouve dans un élément script.
Ah oui, il pourrait, mais ca semble pas être le cas.
enfin bon pas tres grave.
ca ne touche que tres peu de pages, qui passent donc a la trappe d'une
remise en forme !!!
Comme on dit, « Garbage In, Garbage Out ». Je ne vois pas pourquoi tous les navigateurs réagiraient comme tu le dis à ce code incorrect. Certains pourraient parfaitement faire comme tidy, et interpréter bizarrement tout ce qui (selon eux) se trouve dans un élément script.
Ah oui, il pourrait, mais ca semble pas être le cas. enfin bon pas tres grave. ca ne touche que tres peu de pages, qui passent donc a la trappe d'une remise en forme !!!
Etienne
Olivier Miakinen
Hum ben non. si tu html_entity_decode tu vas transformer les $lt; en < et là c'est foutu !!!
Les « < », je suppose. Mais tu as raison, ça ne marche pas.
Finalement... en y re-re-re-réfléchissant... bien sûr, ça ne marche pas si tu commences par htmlspecialchars avant de faire html_entity_decode parce que < va devenir &lt; avant de redevenir <, mais qu'il en sera de même de é.
Mais si tu fais l'inverse ? En principe tu devrais avoir : < ==> < ==> < é ==> é ==> é
Je me trompe ?
Hum ben non.
si tu html_entity_decode tu vas transformer les $lt; en <
et là c'est foutu !!!
Les « < », je suppose. Mais tu as raison, ça ne marche pas.
Finalement... en y re-re-re-réfléchissant... bien sûr, ça ne marche pas
si tu commences par htmlspecialchars avant de faire html_entity_decode
parce que < va devenir &lt; avant de redevenir <, mais qu'il
en sera de même de é.
Mais si tu fais l'inverse ? En principe tu devrais avoir :
< ==> < ==> <
é ==> é ==> é
Hum ben non. si tu html_entity_decode tu vas transformer les $lt; en < et là c'est foutu !!!
Les « < », je suppose. Mais tu as raison, ça ne marche pas.
Finalement... en y re-re-re-réfléchissant... bien sûr, ça ne marche pas si tu commences par htmlspecialchars avant de faire html_entity_decode parce que < va devenir &lt; avant de redevenir <, mais qu'il en sera de même de é.
Mais si tu fais l'inverse ? En principe tu devrais avoir : < ==> < ==> < é ==> é ==> é
Je me trompe ?
Etienne SOBOLE
Mais si tu fais l'inverse ? En principe tu devrais avoir : < ==> < ==> < é ==> é ==> é
Je me trompe ?
Oui tu te trompes.
car <b>titre</b> va devenir <b>titre</b> et c'est pas trop le but ;)
Etienne
Mais si tu fais l'inverse ? En principe tu devrais avoir :
< ==> < ==> <
é ==> é ==> é
Je me trompe ?
Oui tu te trompes.
car <b>titre</b>
va devenir <b>titre</b>
et c'est pas trop le but ;)