Bonjour tout le monde,

J'espère que quelqu'un aura la réponse, j'ai un moteur de recherche qui me récupère ce que j'ai dans ma bdd pour me ressortir les lignes voulus. Mais mon soucis c'est qu'il trouve rien dès que je mets un accents sur un mot.
Exemple :
Je tapes dans ma recherche : telephone il va bien me ressortir les lignes avec le mot telephone mais si je tapes téléphone : il me trouve rien, pourtant dans ma bdd j'ai les deux !

Ma question est la suivante comment faire pour que mon moteur de recherche supporte les accents et me ressorte les mots qui on des accents ? (Tout les accents é/à/è/ù)

Merci

Voici mon code qui me permet de faire ma recherche si ca peut aider

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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
 
<?php
 
	if(isset($_GET['submit'])){
		$mot1 = htmlspecialchars(trim($_GET['mot1']));
		$mot2 = htmlspecialchars(trim($_GET['mot2']));
 
//code pour le 1er champs de recherche
		if(empty($mot1)){
			echo"<span class='errors'>Veuillez remplir tous les champs</span>";
		}else if(strlen($mot1)==1){
			echo"<span class='errors'>Votre mot cl&eacute de recherche est trop court</span>";
		}else{
 
			$Keyword = ' ';
			$mot1 = preg_split('/[\s\-\ ]/', $mot1);
			$count_keywords = count($mot1);
 
			foreach ($mot1 as $key => $mot1mots) {
				$Keyword .= "champs_de_la_table_qui_correspond_a_mot1 LIKE '%$mot1mots%'";
				if($key != ($count_keywords-1)){
					$Keyword .= " AND ";
				}
			}
// code pour le le deuxième champs de recherche
		if(empty($mot2)){
			echo"<span class='errors'>Veuillez remplir tous les champs</span>";
		}else if(strlen($mot2)==1){ 
			echo"<span class='errors'>Votre mot cl&eacute de recherche est trop court</span>";
		}else{
 
			$Keywor = ' ';
			$mot2 = preg_split('/[\s\-\ ]/', $mot2);
			$count_keywords = count($mot2);
 
			foreach ($mot2 as $key => $mot2mots) {
				$Keywor .= "[champs_de_la_table_qui_correspond_a_mot2] LIKE '%$mot2mots%'";
				if($key != ($count_keywords-1)){
					$Keywor .= " AND ";
				}
			}
 
//requête qui lie les tables entre elles et qui permet de chercher dans les tables par un mot clé mais également trié les résultats par date de la plus récente à la plus ancienne. 
		$maRequete = ("SELECT * FROM dbo.[table1] 
			LEFT OUTER JOIN dbo.[table2] 
			ON dbo.[table1].[Champs_communs1] = dbo.[table2].Champs_communs1 
			LEFT OUTER JOIN dbo.[table3] 
            ON dbo.[table1].[ champs_communs2] = dbo.[table3].[champs_communs2] 
			WHERE $Keyword AND $Keywor
			ORDER BY dbo.[table1_ou_table2_ou_table3].champs_d'une_table DESC");
 
 
		$query=sqlsrv_query($conn, $maRequete);
		$rows = sqlsrv_num_rows($query);
 
		if($rows === false){
 
			$Champs0 = false;
			$champs1 = '';
			$champs2 = '';
			$champs3 = '';
			$champs4 = ''; 
			while($search = sqlsrv_fetch_array($query, SQLSRV_FETCH_ASSOC)){
				if ($Champs0 === false) {	// Initialisation
					$Champs0 = $search['Nom du champs dans la table qui correspond'];
					$champs1 = $search['Nom du champs dans la table qui correspond'];
					$champs2 = $search['Nom du champs dans la table qui correspond'];
					$champs3 = $search['Nom du champs dans la table qui correspond'];
					$champs4 = $search['Nom du champs dans la table qui correspond'];
				}
				elseif ($Champs0 == $search['Nom du champs dans la table qui correspond']) {
					// On reste sur le même champs. On se contente de rajouter le nouveau morceau.
					$champs3 .= ' ' . $search['Nom du champs dans la table qui correspond'];
				}
				else {
					// Changement et On affiche les données courantes...
					$n = str_ireplace($mot1mots,'<span class="surlign">'.$mot1mots.'</span>', $champs1);//Met en gras le mot rechercher dans la colonne "champs1" 
					$cc = str_ireplace($mot2mots,'<span class="surlign">'.$mot2mots.'</span>', $champs2);//Met en gras le mot rechercher dans la colonne "champs2"
					$d = str_ireplace($mot1mots,'<span class="surlign">'.$mot1mots.'</span>', $champs3);//Met en gras le mot rechercher dans la colonne "champs3"
					$c = str_ireplace($mot1mots,'<span class="surlign">'.$mot1mots.'</span>', $champs4);//Met en gras le mot rechercher dans la colonne "champs4"
					echo"<p class='carre'><strong>Nom du champs1: </strong> $n";
					echo"<br /> <strong>Nom du champs2 : </strong> $cc";
					echo"<br /> <strong>Nom du champs3 : </strong> $d";
					echo"<br /> <strong>Nom du champs4 : </strong> $c <br /></p><br />";
 
 
					// ... et on les change 
					$champs0 = $search['Nom du champs dans la table qui correspond'];
					$champs1 = $search['Nom du champs dans la table qui correspond'];
					$champs2 = $search['Nom du champs dans la table qui correspond'];
					$champs3 = $search['Nom du champs dans la table qui correspond'];
					$champs4 = $search['Nom du champs dans la table qui correspond'];
				}
			}
			// Et on n'oublie pas le tout dernier 
			$n = str_ireplace($mot1mots,'<span class="surlign">'.$mot1mots.'</span>', $champs1);
			$cc = str_ireplace($mot2mots,'<span class="surlign">'.$mot2mots.'</span>', $champs2);
			$d = str_ireplace($mot1mots,'<span class="surlign">'.$mot1mots.'</span>', $champs3);
			$c = str_ireplace($mot1mots,'<span class="surlign">'.$mot1mots.'</span>', $champs4);
			echo"<br /> <strong>Nom du champs2  : </strong> $cc";
			echo"<br /> <strong>Nom du champs3  : </strong> $d";
			echo"<br /> <strong>Nom du champs4 : </strong> $c <br /></p><br />";
		}		
	} 
    }
}
 
?>