mots clés, accents et recherche SQL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : mots clés, accents et recherche SQL

mots clés, accents et recherche SQL

par webaida » 25 mars 2009, 10:03

Salut,

je voudrais aussi faire une recherche par mot clé dans ma BDD et je suis confronté au cas suivant : les utilisateurs associent des mots clés à un domaine et ensuite j'utilise ces mots clés pour associer des textes à des domaines.

ex :
domaine : informatique / mots clés : ordinateur, intel, nvidia

Si un texte contient le mot "intel", je l'associerai au domaine "informatique".
Pour faire les association, je fais les choses suivantes :

Code : Tout sélectionner

$motclef = sql_regcase(' ' .$motCle['LibelleMotCle'] .' '); SELECT texte WHERE texte REGEXP '$motclef'"
Ca fonctionne mais pas assez bien à mon goût. En effet ce sont les internautes qui donnent les mots clés et par exemple j'ai le mot clé "ELECTRICITE" (en majuscule et sans accents) qui ne permettra pas d'associer le texte contenant "Electricité" (une majuscule et un accent).

Y a t'il une manière de chercher dans une base SQL une occurence, quelque-soit l'accentuation et la casse (sql_regcase() gérant déjà la casse).

Merci !