Bonjour,
je travail sur un système de maillage interne. le principe est simple je recherche des mots clé et si il sont présent je les remplace par un lien vers la page concerné.

J'ai donc fait ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
$articleTexte = $articlePage['texte'];
// MAILLAGE INTERNE
$requete = ("SELECT * FROM `maillage` ORDER BY id DESC");	
$resultat = mysql_query($requete );
while ($row = mysql_fetch_array($resultat)){
	$mot = html_entity_decode($row['mot'], ENT_QUOTES, 'UTF-8');
	$title = html_entity_decode($row['title'], ENT_QUOTES, 'UTF-8');
	$lien = html_entity_decode($row['lien'], ENT_QUOTES, 'UTF-8');
 
	$patterns = array();
	$patterns[0] = '/\s'.$mot.'\b/i';
	$replacements = array();
	$replacements[0] = " <a href='".$lien."' title='".$title."' class='Lien_Centre_Titre_T".$articleThemeId."' style='font-size:14px;font-family: Arial;'>".$mot."</a>";
	$articleTexte = preg_replace($patterns, $replacements, $articleTexte, $limit = 2);
}
echo $articleTexte ;
Les mots sans accents sont remplacer sans problème, mais les mots avec accents ne sont pas pris en compte.

A noter que mes accents sont stocké en html exemple : sexualit&eacute; pour séxualité

Quelqu'un aurait une solution a me proposer ?

Cordialement,
Tentsuken