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) {
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){
......
......@@ -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
......
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