diff --git a/ecrire/inc_filtres.php3 b/ecrire/inc_filtres.php3
index dbaad0ba9402ae043792944e849dfaa27261d5d5..265ae3cc11a50072f8c65031880824dfde2b5403 100644
--- a/ecrire/inc_filtres.php3
+++ b/ecrire/inc_filtres.php3
@@ -54,6 +54,43 @@ function supprimer_caracteres_illegaux($texte) {
 	return strtr($texte, $from, $to);
 }
 
+// Corrige les caracteres degoutants utilises par les Windozeries
+function corriger_caracteres_windows($texte) {
+	static $trans;
+	if (!$trans) {
+		// 145,146,180 = simple quote ; 147,148 = double quote ; 150,151 = tiret long
+		$trans['iso-8859-1'] = array(
+			chr(146) => "'",
+			chr(180) => "'",
+			chr(147) => '“',
+			chr(148) => '”',
+			chr(150) => '-',
+			chr(151) => '-',
+			chr(133) => '...'
+		);
+		$trans['utf-8'] = array(
+			chr(194).chr(146) => "'",
+			chr(194).chr(180) => "'",
+			chr(194).chr(147) => '“',
+			chr(194).chr(148) => '”',
+			chr(194).chr(150) => '-',
+			chr(194).chr(151) => '-',
+			chr(194).chr(133) => '...'
+		);
+	}
+	$charset = lire_meta('charset');
+	if (!$trans[$charset]) return $texte;
+	return strtr($texte, $trans[$charset]);
+}
+
+// Supprimer caracteres windows et les caracteres de controle ILLEGAUX
+function corriger_caracteres ($texte) {
+	$texte = corriger_caracteres_windows($texte);
+	$texte = supprimer_caracteres_illegaux($texte);
+	return $texte;
+}
+
+
 // Nettoyer les backend
 function texte_backend($texte) {
 
@@ -146,37 +183,6 @@ function http_href_img($href, $img, $att, $title='', $style='', $class='', $evt=
 	return  http_href($href, http_img_pack($img, $title, $att), $title, $style, $class, $evt);
 }
 
-// Corrige les caracteres degoutants utilises par les Windozeries
-function corriger_caracteres($texte) {
-	static $trans;
-	if (!$trans) {
-		// 145,146,180 = simple quote ; 147,148 = double quote ; 150,151 = tiret long
-		$trans['iso-8859-1'] = array(
-			chr(146) => "'",
-			chr(180) => "'",
-			chr(147) => '“',
-			chr(148) => '”',
-			chr(150) => '-',
-			chr(151) => '-',
-			chr(133) => '...'
-		);
-		$trans['utf-8'] = array(
-			chr(194).chr(146) => "'",
-			chr(194).chr(180) => "'",
-			chr(194).chr(147) => '“',
-			chr(194).chr(148) => '”',
-			chr(194).chr(150) => '-',
-			chr(194).chr(151) => '-',
-			chr(194).chr(133) => '...'
-		);
-	}
-
-	$texte = supprimer_caracteres_illegaux($texte);
-
-	$charset = lire_meta('charset');
-	if (!$trans[$charset]) return $texte;
-	return strtr($texte, $trans[$charset]);
-}
 
 // Transformer les sauts de paragraphe en simples passages a la ligne
 function PtoBR($texte){
diff --git a/inc-messforum.php3 b/inc-messforum.php3
index 100fa10390dded7f74768d28fc3404f5c4a51737..f8a89fe685f15ab06c85e4810c4ea0018b2dd6e0 100644
--- a/inc-messforum.php3
+++ b/inc-messforum.php3
@@ -13,6 +13,7 @@
 
 include_ecrire('inc_meta.php3');
 include_ecrire('inc_forum.php3');
+include_ecrire('inc_filtres.php3');
 include_ecrire("inc_abstract_sql.php3");
 include_local(_FILE_CONNECT);
 
@@ -173,12 +174,12 @@ function enregistre_forum() {
 	id_auteur = $id_auteur,
 	id_thread = $id_thread,
 	date_heure = NOW(),
-	titre = '".addslashes($titre)."',
-	texte = '".addslashes($texte)."',
-	nom_site = '".addslashes($nom_site_forum)."',
-	url_site = '".addslashes($url_site)."',
-	auteur = '".addslashes($auteur)."',
-	email_auteur = '".addslashes($email_auteur)."',
+	titre = '".addslashes(corriger_caracteres($titre))."',
+	texte = '".addslashes(corriger_caracteres($texte))."',
+	nom_site = '".addslashes(corriger_caracteres($nom_site_forum))."',
+	url_site = '".addslashes(corriger_caracteres($url_site))."',
+	auteur = '".addslashes(corriger_caracteres($auteur))."',
+	email_auteur = '".addslashes(corriger_caracteres($email_auteur))."',
 	ip = '$REMOTE_ADDR',
 	statut = '$statut'
 	WHERE id_forum = $id_message