Voici un exemple approximatif de mon code actuel. Pour des raisons de simplicité, je n'ai pas inclus les requêtes paramétrées :
if(isset($_GET["q"])) {
$query = "%" . trim($_GET["q"]) . "%";
$search = $pdo->query("
SELECT *
FROM test
WHERE title LIKE {$query} AND keywords LIKE {$query}
");
var_dump($search);
}
Tableau : test :
| title | keywords |
| this, is a "test" | this is a test |
J'ai essayé de créer un système de recherche simple sur mon site web en utilisant les éléments de base suivants SQL
. La plupart du temps, j'ai obtenu des résultats positifs, mais j'ai rencontré un problème que je ne parviens pas à résoudre après plusieurs jours de recherche.
Si je tape quelque chose comme "this is a test"
comme requête, j'obtiens une ligne retournée avec les résultats pertinents. Mais lorsque j'interroge "test this is a"
il renvoie aucun résultat .
Et si la requête comporte des fautes de frappe, cela ne fonctionne pas non plus. (J'ai cherché dans le levenshtein, mais aucune réponse ne fonctionne au sein de MySQL ).
Toute aide est appréciée, A la vôtre.