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

Evolutions du club Discussion :

[BUG] Utilisation d'entités XML numériques dans les messages

  1. #1
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 845
    Points
    4 845
    Par défaut [BUG] Utilisation d'entités XML numériques dans les messages
    J'ai constaté ce problème dans le forum XML :
    Lorsque, dans un post, on écrit une entité XML numérique (&#...;), celle-ci est interprétée par le forum à la fois lors l'envoi du message et lors de son édition.

    Je me doute que ce n'est pas très clair pour le môment alors je vais détailler un peu.
    Il y'a 2 cas différents :
    1. L'utilisation d'une entité numérique dans le contenu du message :
      1. Ecrire "
"
      2. Prévisualiser le message -> on "voit" un retour charriot dans le texte affiché ainsi que dans le texte en édition (on a fait prévisualiser)
    2. L'utilisation d'une entité numérique dans une balise code :
      1. Ecrire "
"
      2. Prévisualiser le message -> le "
" s'affiche correctement dans la prévisualisation mais dans le texte en édition il est remplacé par un retour charriot


    Il y'a donc une interprétation qui est faite à la fois lors de l'envoi du message ainsi que lors de son ouverture en édition.

    Pour info il y'a 2 façons de contourner le problème :
    1. remplacer le premier "&" par "&". Dans le message on écrit donc "
".
    2. ajouter une balise B/I/U/S dans l'entité afin de prévenir le parse : "&[B][/B]#10;"

    La première méthode à l'inconvénient d'être reparsée à chaque opération :
    Un "
" sur lequel on fait une prévisualisation devient un "
" dans l'éditeur puis un retour charriot après envoi du message.

    La seconde méthode ne marchera plus si jamais les balises vides sont supprimées automatiquement par le forum (dans une évolution ultérieure peut-être).

    [EDIT]Pour info :
    Je parle tout le temps de prévisualisation parce que ça ne nécessite qu'une seule action utilisateur et qu'aucun message n'est réellement posté, mais (et je viens de retester) le faire en deux actions séparées (Envoyer puis Editer) revient exactement au même.[/EDIT]

    Donc voilà, si vous voyez comment le corriger...
    Loceka.

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    Il existe une balise [ noparse ] il me semble.
    Reste à vérifier si elle corrige le problème

    Edit : bah non... ça ne semble rien corriger
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Responsable technique

    Avatar de Anomaly
    Homme Profil pro
    Directeur
    Inscrit en
    Juin 2003
    Messages
    10 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Directeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 332
    Points : 130 178
    Points
    130 178
    Billets dans le blog
    1
    Par défaut
    Je suis tout à fait au courant de ce problème particulier... personnellement je trouve ça pas du tout logique et je n'aurais jamais autorisé la moindre interprétation de code HTML (à l'instar du Chat qui ne fait aucune interprétation de ce type), mais effectivement le forum, lui, interprète certaines entités HTML. Cela lui donne notamment la capacité de pouvoir accepter l'arabe ainsi que le signe Euro bien qu'à la fois le code HTML, le code source PHP derrière et la base de données sont en ISO 8859-1.

    Le forum accepte même l'arabe écrit directement sans avoir à encoder directement en entités HTML ; copie par exemple du texte en caractères arabes dans la zone de saisie et valide ; dans ce cas c'est le navigateur même qui transformera de manière totalement transparente les caractères étrangers en entités HTML avant de l'envoyer au serveur puisque l'encodage est ISO 8859-1. On a affaire ici à un encodage historique doublé de comportements historiques aussi bien des navigateurs que des logiciels web (forums, blogs, ce sont des comportements courants), qui seront très difficiles à changer sans tout jeter à plat.

    Si c'était des choix à faire maintenant, il est évident que ces entités seraient bannies et UTF-8 généralisé, mais là on a affaire à des choix effectués dix ou quinze ans sur le moteur originel du forum qui seront impossibles à changer sans réécriture.
    Responsable technique forum & site

    Si ce message (ou un autre) vous a aidé et/ou vous semble pertinent, votez pour lui avec

  4. #4
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 845
    Points
    4 845
    Par défaut
    Ok, alors s'il te plaît ne fait pas d'évolution visant à supprimer automatiquement les balises de formattage vides alors.

    Merci de l'explication en tout cas.

  5. #5
    Responsable technique

    Avatar de Anomaly
    Homme Profil pro
    Directeur
    Inscrit en
    Juin 2003
    Messages
    10 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Directeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 332
    Points : 130 178
    Points
    130 178
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Loceka Voir le message
    Ok, ben je t'en prie ne fait pas d'évolution visant à supprimer automatiquement les balises de formattage vides alors.
    Merci d'être désagréable. Je retiendrais ceci pour tes prochaines demandes.

    Je vais donc expliquer une nouvelle fois en moins long : le support des entités HTML est une plaie (et conduit au problème que tu cites au début), mais nécessaire car c'est ainsi que les caractères non-ISO peuvent être acceptés sur le forum. Supprime ceci et tu ne pourras plus taper de caractère non-ISO, comme le signe "€". S'il fallait changer l'encodage de tout le forum en Utf-8, ce qui serait évidemment l'idéal, cela serait une réécriture complète.
    Responsable technique forum & site

    Si ce message (ou un autre) vous a aidé et/ou vous semble pertinent, votez pour lui avec

  6. #6
    Membre émérite
    Avatar de prgasp77
    Homme Profil pro
    Ingénieur en systèmes embarqués
    Inscrit en
    Juin 2004
    Messages
    1 306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Points : 2 466
    Points
    2 466
    Par défaut
    Citation Envoyé par Loceka Voir le message
    La [...] méthode ne marchera plus si jamais les balises vides sont supprimées automatiquement par le forum (dans une évolution ultérieure peut-être).
    Citation Envoyé par Loceka Voir le message
    Ok, alors s'il te plaît ne fait pas d'évolution visant à supprimer automatiquement les balises de formattage vides alors.

    Merci de l'explication en tout cas.
    Bonjour Anomaly. Remis dans son contexte, le dernier message de Loceka n'est en rien désagréable.
    -- Yankel Scialom

  7. #7
    Responsable technique

    Avatar de Anomaly
    Homme Profil pro
    Directeur
    Inscrit en
    Juin 2003
    Messages
    10 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Directeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 332
    Points : 130 178
    Points
    130 178
    Billets dans le blog
    1
    Par défaut
    Oui il m'a expliqué après coup par MP.

    Rassurez-vous je n'ai pas l'intention de faire une "évolution" inutile consistant à supprimer les balises vides.

    Je tenais juste à exprimer mon impuissance devant ce problème et je pensais avoir été mal compris et donner l'impression que je ne voulais pas me donner la peine de corriger ce problème bien réel.
    Responsable technique forum & site

    Si ce message (ou un autre) vous a aidé et/ou vous semble pertinent, votez pour lui avec

Discussions similaires

  1. Récupérer les entités XML définies dans le doctype
    Par JustyDark dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 06/05/2015, 11h35
  2. Utilisation de la variable self dans les méthodes
    Par sliderman dans le forum Général Python
    Réponses: 2
    Dernier message: 19/11/2007, 01h20
  3. Utilisation de "saut de page" dans les etats
    Par BizutAccess dans le forum IHM
    Réponses: 3
    Dernier message: 22/10/2007, 09h14
  4. [X] Utilisation des listes de parametres dans les commandes
    Par axel-erator dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 29/06/2007, 12h00
  5. [XML] Accent dans les noms de balises
    Par virgul dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 09/03/2005, 13h42

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