Cool Coyote
Administrateur
Enregistré le 26/09/2001
Messages: 2629
Non connecté
|
Ajouté le : 23/02/2005 13:17
Message :
En fait le wysiwyg est à la base un nid à trous de sécurités tel quel, dans le sens ou le code produit par ton formulaire est du html. Certes tu peux tout à fait supprimer les injections MySQL en protégeant avec un htmlentities() ou autre, mais au moment de réafficher ton message, il faut bien remettre en place les balises HTML pour que ton formatage de texte soit visible. Et là on ne parle plus d'injections ou autre mais de failles XSS. En effet il est trés facile d'insérer du code javascript ou autre.
Alors oui, quelqu'un sur le forum disait qu'il fallait tester ce qui a été saisit afin de supprimer ce qui n'est pas bon. En théorie c'est vrai, en pratique c'est difficilement réalisable car il y a tellement de possibilités à tester avec le HTML que c'est un peu compliqué et à coup sûr tu laisseras passer des choses.
Toutes ces raisons font que sur le forum j'ai décidé de transformer certaines balises qui sont testées en BBCode et que tout le reste en HTML est supprimé. On en revient finalement à récupérer un code qui a été fait avec l'éditeur normal.
Aprés pour ton problème de Wordpad voici l'explication de comment ça fonctionne:
Lorsque tu utilises IE, quand tu met un texte en gras, il va être entouré des balises <STRONG> et </STRONG>. Donc dans mon traitement, je dis que si tu utilises IE, tout ce qui est entre ces deux balises tu le transforme en [bold] et [/bold]
FireFox lui travaille différemment. Si tu mets du texte en gras il va l'encadrer par du CSS:
<span style="font-weight: bold;">blabla</span>
Donc dans mon traitement je cherche ça pour mettre en gras et non plus <STRONG>.
Si Wordpad te génère un formatage identique à IE, ses balises seront donc reconnues, mais pas sous Firefox car je ne traite pas les balises provenant de IE. C'est aussi pourquoi aujourd'hui quand tu fais un copier/coller d'un texte du forum dans le formulaire, le formatage n'est pas conservé non plus.
La solution étant de permettre à FireFox de pouvoir traiter les balises que gère IE au cas où. C'est prévu pour une prochaine évolution car comme je l'ai dis, le WYSIWYG est encore expérimental donc y'a encore pas mal de choses à faire.
En gros ce que tu demandes devrait fonctionner à terme, mais faut encore que l'interface subissent des améliorations
Merci de respecter les règles d'ajout de messages !!
Avant de poser une question:
[Documentation] - [FAQ] - [Recherche]
Cool Coyote - Webmaster (me contacter)
|