Vous pouvez jeter un oeil à un outil PHP appelé HTMLPurifier - il y a un demo page disponible, si vous voulez vérifier rapidement ce qu'il peut faire.
Il faut du "type de" HTML en entrée, et donne du HTML bien formé en tant que sortie; De cette façon, vous ne forcez pas vos utilisateurs à entrer du HTML bien formé, mais vous pouvez "corriger" ce qu'ils ont tapé.
Une autre bonne chose est, vous pouvez spécifier quels balises et attributs sont autorisés; ce qui est bon pour la sécurité aussi:
- par exemple, vous pouvez autoriser
<p>
et <strong>
balises, mais pas <script>
. Vous pouvez également autoriser <a>
+ href
; mais pas <a>
+ onclick
Par exemple, voici quelques HTML non bien formé, vous pouvez lui donner:
<p>this is a <strong>test</p>
<script type="text/javascript">alert('glop');</script>
<p>And this is another <em>te<strong>st</em></strong></p>
Et voici le code HTML bien formé/sécurisé donné que sortie:
<p>this is a <strong>test</strong></p>
<p>And this is another <em>te<strong>st</strong></em></p>
Qu'est-ce qui a changé?
- l'étiquette
<strong>
au premier alinéa a été fermé automatiquement
- la balise
<script>
et son contenu ont été enlevés
- l'ordre de la fermeture
<em>
et <strong>
balises dans le deuxième alinéa a été corrigé.
Ceci était juste un exemple rapide, bien sûr - j'espère que cela a aidé.
merci beaucoup ... – foxybagga