Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/08/2011, 17h00   #1
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Par défaut textarea et faille xss

Bonjour,
Citation:
la question est simple : "comment se protéger des failles xss sur un texarea ?"
On vient de me faire remarquer, très justement, qu'un de mes scripts avait une faille xss. (merci stealth35)

Je protège la récupération de mes données issues d'un formulaire :
Code :
1
2
3
4
5
6
7
8
<?php
	// recuperation
	$from_input 	= htmlspecialchars(stripslashes(trim($_POST['from_input'])));
	$from_textarea 	= stripslashes(trim($_POST['from_textarea']));
	// avant passage en bdd : protection contre injection sql
	$from_input 	= mysql_real_escape_string($from_input);
	$from_textarea 	= mysql_real_escape_string($from_textarea);
?>
On a aussi :
- Sanitize filters
- filter_input

Mais je n'ai pas trouvé de solution contre les failles xss pour un textarea, qui, par définition, doit pouvoir enregistrer et afficher des balises html.

D'après ce que j'ai lu ("parcouru" serait plus juste) ici, , ou , ...
les hack xss "basiques" sont surtout de la forme :
- <script>alert("on t'a eu !")</script>
- <iframe src="http://site-du-hacker.com"></iframe>

-> "Comment s'en protéger au mieux ?
Une 1ère approche serait de supprimer toutes les balises <script> et <iframe> (et leur contenu) avec des regex, ou dom (?)
-> "Sera-ce suffisant ?"
-> "Quelle est la bonne méthode ?"
Merci.
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 17h17   #2
Membre Expert
 
Avatar de gene69
 
Inscription : janvier 2006
Messages : 951
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : janvier 2006
Messages : 951
Points : 1 063
Points : 1 063
tu mets un htmlspecialchar() à l'affichage et ça suffit. souvent tu ne dois pas interpreter le code saisi à l'interieur du textarea... ... sinon:

un peu de tidy pour nettoyer le code html saisi (parce que sinon ya des spécialiste dans le piégeage de la fonction strip_tag )
un peu de dom pour interdire les balises scripts

au fait pour moi utiliser mysql_real_escape_string() sans expliciter le "link" vers la ressource SQL m'a toujours semblé une mauvaise idée... c'est pas tout le temps faux... mais bon.. et puis pdo... et patati... et patata...

je suis un grand fan des sanitizes... mais bon ça va t'enlever les caractères non ascii uniquement...
__________________
PHP fait nativement la validation d'adresse électronique Vous êtes perdu en PHP? rassurez-vous ici (en)
Utilisez le bouton résolu!
gene69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 17h18   #3
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 011
Points : 5 011
Empêcher l'insertion de balises iframe et script me paraît suffisant.

Tu peux le faire avec strip_tags en passant un tableau des tags autorisés.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/08/2011, 17h19   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 456
Points : 8 456
si tu veux garder la mise en forme html, fait simplement un strip_tags et garde les balises souhaité (<a> <p> <br> ...),

ps : je te déconseille de faire un stripslashes, désactive plutôt les magic_quote, etl e htmlspecialschars doit se faire uniquement a l'affichage, ta base doit être intacte
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 18h18   #5
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Me revoilà ...
Le coupable :
Code :
1
2
<p>Ceci est un autre article <strong>contenant une faille xss</strong><br /> 
entre ici -><script type="text/javascript">alert('tu fais moins le malin !');</script><- et la !</p>
-> htmlspecialchars() : ne fonctionne pas sur un textarea (puisque son rôle est justement de remplacer TOUTES les balises html, ... même les bonnes !)
Code :
1
2
&lt;p&gt;Ceci est un autre article &lt;strong&gt;contenant une faille xss&lt;/strong&gt;&lt;br /&gt; 
entre ici -&gt;&lt;script type="text/javascript"&gt;alert('tu fais moins le malin !');&lt;/script&gt;&lt;- et la !&lt;/p&gt;
-> strip_tags() : nécessite une liste exhaustive des balises à conserver (je crains que ca ne soit limité, en terme d'"évolutivité")
(dommage qu'il n'y ait pas une version "balises-a-supprimer")

-> Il reste la piste : "supprimer les balises <script> et <iframe>" ...
Je n'y connais rien en DOM ...
J'ai bien vu ca DOMDocument::getElementsByTagName ou DOMDocument::getElementsByTagNameNS
(mais comment les utiliser ?) -> je vais étudier le code de stealth35 ici ...

Quelqu'un a la solution avec DOM ?
Avant que je m'essaie aux regex (ce n'est pas gagné non plus !), et qu'on me tape sur les doigts ...

Le but est d'obtenir :
Code :
1
2
<p>Ceci est un autre article <strong>contenant une faille xss</strong><br /> 
entre ici -><- et la !</p>
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 18h27   #6
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 011
Points : 5 011
comme ça:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
$html = <<< HTML
<p>Ceci est du code <em>HTML</em></p>
<span>Avec des morceaux de &lt;script&gt; dedans <script>alert('j\'aime les XSS');</script></span>
HTML;
 
$doc = new DOMDocument;
$doc->loadHTML($html);
 
$list = $doc->getElementsByTagName('script');
foreach ($list as $node)
  $node->parentNode->removeChild($node);
 
echo $doc->saveHTML();
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 18h36   #7
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 456
Points : 8 456
y'a pas non plus énormément de balises (pour la liste c'est bien ce que tu fait avec la surpression de caractères accentués), je me contentais de ça (a rajouter/enlever si besoin:

Code :
$tags = '<a><strong><small><span><blockquote><cite><code><dd><dt><dl><div><p><em><pre><h1><h2><h3><h4><h5><h6><img><ul><ol><li><table><th><td><tr>';
et encore pour du texte style commentaire j'en mettrait beaucoup moins
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/08/2011, 18h39   #8
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
@stealth35,
ok pour ces balises, mais avec les nouvelles balises (html5, ...) et les mises à jour des éditeurs wysiwyg, on risque d'en rater à l'avenir, non ?

[Edit] remarque stupide de ma part ... il suffit de mettre ca dans une fonction pour simplifier la mise à jour
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 19h05   #9
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
J'ai un petit soucis : mon site "demo" est sur ... free.fr ! -> PHP Version 4.4.3-dev
Il faudrait que j'utilise aussi DOM XML (PHP 4)
... ou que je puisse tester la version de php et switcher entre DOM et DOM XML (?)

Ca se complique ...
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 19h11   #10
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 456
Points : 8 456
Citation:
Envoyé par jreaux62 Voir le message
J'ai un petit soucis : mon site "demo" est sur ... free.fr ! -> PHP Version 4.4.3-dev
active PHP 5
.htaccess : php 1
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/08/2011, 19h39   #11
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Bon. en regex, ca donne ca : "supprimer les balises <script> et <iframe>"
Code :
1
2
3
4
5
6
7
8
9
10
<?php
function strip_faille_xss($text) 
{
	// suppression des balises <script>
	$text = preg_replace('#<script(.*)/script>#Ui', '', $text);
	// suppression des balises <iframe>
	$text = preg_replace('#<iframe(.*)/iframe>#Ui', '', $text);
	return $text;
}
?>
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 19h50   #12
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Citation:
Envoyé par stealth35 Voir le message
active PHP 5 -> .htaccess : php 1

Donc, voici la version DOM :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
function no_faille_xss($text) 
{
	$doc = new DOMDocument();
	$fragment = $doc->createDocumentFragment();
	$fragment->appendXML($text);
	$doc->appendChild($fragment);
	// suppression des balises <script>
	$list = $doc->getElementsByTagName('script');
	foreach ($list as $node)
		$node->parentNode->removeChild($node);
	// suppression des balises <iframe>
	$list = $doc->getElementsByTagName('iframe');
	foreach ($list as $node)
		$node->parentNode->removeChild($node);
 
	return $doc->saveHTML();
}
?>
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 22h07   #13
Invité régulier
 
Avatar de antoinelavigne
 
Inscription : mars 2005
Messages : 82
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 82
Points : 9
Points : 9
Salut jreaux62,

étant dans la même situation que toi, je me suis tourné vers tes REGEX.

Le 1er (<script>) marche impec. Le 2ème (<iframe>) semble ne pas marcher chez moi ;

Quand à la méthode DOM (jamais entendu parler de ce truc avant ), elle me fait bugger tous les messages de mon forum avec des fatals errors PHP.

EDIT : finalement, en testant plusieurs formes d'iframe, toutes sont bloquées ! En fait, la difficulté sur cette balise vient du fait qu'elle peut prendre pleins de formes différentes, ce qui complique bien le truc
antoinelavigne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 22h25   #14
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Bonjour,
j'attends vos retours sur les fonctions : avec regex, ou avec dom.

Après avoir testé les 2 :
- avec regex : semble bien fonctionner, avec php4 ou php5
- avec dom : semble bien fonctionner, SAUF quand il y a des entités html (&eacute;, &egrave;, ...) -> messages d'erreur

Pour l'instant, ma préférence va aux regex ...

ps : il me semble IMPORTANT de rappeler que ce ne sont pas des protection à 100% contre les failles xss !
Ces fonctions ne suppriment QUE les balises <script> et <iframe> (et leur contenu).
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 22h31   #15
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 456
Points : 8 456
donc ce te dérange pas d'avoir des balises <html> ou <body> dans ton texte, et briser la validation de ta page ? pourquoi ne pas retenir strips_tags c'est le plus simple a comprendre et a utiliser ...
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 22h46   #16
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
euuh, j'avais pas pensé à ca ! ...
+1 pour strip_tags

Et toi, stealth35, tu fais comment ?
strip_tags ? avec ce que tu as indiqué plus haut ?
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 22h50   #17
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 456
Points : 8 456
Citation:
Envoyé par jreaux62 Voir le message
euuh, j'avais pas pensé à ca ! ...

+1 pour strip_tags

ps : j'ai du mal à penser comme un hackeur. Ce n'est pas dans ma mentalité ...

allé je t'ai mis une autre faille pour la route y'a risque de CSRF
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 23h02   #18
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Citation:
Petite annonce - URGENT :
Cherche petite ferme dans le Larzac, avec eau courante et éclairage à la bougie,
pour y élever des chèvres, et fabriquer du bon fromage,
loin de toute forme de technologie informatique ou de réseau wifi.
Merci.
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 23h04   #19
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 456
Points : 8 456
t’inquiètes pas après c'est des automatismes c'est comme faire du code HTML valide
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/08/2011, 23h34   #20
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
C'est vrai que jusqu'à présent, je n'avais jamais été confronté directement à ce problème.
... alors qu'on trouve des textarea dans tous les formulaires !

Bon. Du coup ...
Code :
1
2
3
4
5
6
7
8
9
10
11
<?php
function strip_tags_textarea($text) 
{
	// balises qui seront conservees
	$allowable_tags =  '<abbr><acronym><a><b><br><blockquote><cite><code><dl><dt><dd>';
	$allowable_tags .= '<div><i><img><h1><h2><h3><h4><h5><h6><hr><p><span>';
	$allowable_tags .= '<em><strong><small><pre><u><ul><ol><li>';
	$allowable_tags .= '<table><caption><legend><thead><tfoot><tbody><tr><th><td><colgroup><col>';
	return strip_tags($text, $allowable_tags);
}
?>
A voir s'il faut en ajouter ou en enlever...
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h28.


 
 
 
 
Partenaires

Hébergement Web