Valider ba46d76d rédigé par cerdic's avatar cerdic
Parcourir les fichiers

Ferme #3006 : l'echappement des champs saisis dans les formulaires CVT réalisé...

Ferme #3006 : l'echappement des champs saisis dans les formulaires CVT réalisé par la fonction protege_champ reposait sur entites_html. Celle-ci est est en fait prévue pour de l'affichage, et se permet de reformater les &#123 ce que l'on ne veut pas lors de la saisie.
On reprend donc la partie echappement de entites_html pour se contenter d'échapper.
parent 7624e77d
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+7 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -17,6 +17,7 @@
if (!defined('_ECRIRE_INC_VERSION')) return;

include_spip('inc/filtres');
include_spip('inc/texte');

/**
 * Protéger les saisies d'un champ de formulaire
@@ -37,7 +38,12 @@ function protege_champ($texte){
		// ne pas corrompre une valeur serialize
		if ((preg_match(",^[abis]:\d+[:;],", $texte) AND unserialize($texte)!=false) OR is_null($texte))
			return $texte;
		$texte = entites_html($texte);
		if (is_string($texte)
			AND $texte
		  AND strpbrk($texte, "&\"'<>")!==false
		) {
			$texte = htmlspecialchars(echappe_retour(echappe_html($texte,'',true),'','proteger_amp'),ENT_QUOTES);
		}
	}
	return $texte;
}