Skip to content
Extraits de code Groupes Projets
Valider c0638b7f rédigé par Fil's avatar Fil
Parcourir les fichiers

appliquer corriger_caracteres() sur les posts des forums au moment où on les...

appliquer corriger_caracteres() sur les posts des forums au moment où on les enregistre dans la base + il n'est pas interdit de coder proprement
parent 9d730883
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -54,6 +54,43 @@ function supprimer_caracteres_illegaux($texte) { ...@@ -54,6 +54,43 @@ function supprimer_caracteres_illegaux($texte) {
return strtr($texte, $from, $to); 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 // Nettoyer les backend
function texte_backend($texte) { function texte_backend($texte) {
...@@ -146,37 +183,6 @@ function http_href_img($href, $img, $att, $title='', $style='', $class='', $evt= ...@@ -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); 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 // Transformer les sauts de paragraphe en simples passages a la ligne
function PtoBR($texte){ function PtoBR($texte){
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
include_ecrire('inc_meta.php3'); include_ecrire('inc_meta.php3');
include_ecrire('inc_forum.php3'); include_ecrire('inc_forum.php3');
include_ecrire('inc_filtres.php3');
include_ecrire("inc_abstract_sql.php3"); include_ecrire("inc_abstract_sql.php3");
include_local(_FILE_CONNECT); include_local(_FILE_CONNECT);
...@@ -173,12 +174,12 @@ function enregistre_forum() { ...@@ -173,12 +174,12 @@ function enregistre_forum() {
id_auteur = $id_auteur, id_auteur = $id_auteur,
id_thread = $id_thread, id_thread = $id_thread,
date_heure = NOW(), date_heure = NOW(),
titre = '".addslashes($titre)."', titre = '".addslashes(corriger_caracteres($titre))."',
texte = '".addslashes($texte)."', texte = '".addslashes(corriger_caracteres($texte))."',
nom_site = '".addslashes($nom_site_forum)."', nom_site = '".addslashes(corriger_caracteres($nom_site_forum))."',
url_site = '".addslashes($url_site)."', url_site = '".addslashes(corriger_caracteres($url_site))."',
auteur = '".addslashes($auteur)."', auteur = '".addslashes(corriger_caracteres($auteur))."',
email_auteur = '".addslashes($email_auteur)."', email_auteur = '".addslashes(corriger_caracteres($email_auteur))."',
ip = '$REMOTE_ADDR', ip = '$REMOTE_ADDR',
statut = '$statut' statut = '$statut'
WHERE id_forum = $id_message WHERE id_forum = $id_message
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter