
Tout ce qu'il y a de plus cohérent!
Bon alors reprenons depuis le début. Dis-moi si je fais une erreur de logique. Je suis le tuto suivant:
http://omiossec.developpez.com/mysql/fulltext/methodes/
Je veux extraire l'id et le titre de la fiche dans laquelle la réponse est susceptible d'apparaître:
SELECT IdGroupe, NomGroupe, IdSociete, NomSociete, IdProduit, NomProduit,
Je sélectionne les champs dans lesquels, je fais ma recherche:
MATCH (g.NomGroupe, g.AutreNomGroupe, g.Presentation, g.InfCompl,
s.NomSociete, s.AutreNomSociete, s.Presentation, s.InfCompl,
p.NomProduit, p.Presentation)
J'"argumente" avec le mot recherché $MotRech en mode booléen:
AGAINST ('".$MotRech."' IN BOOLEAN MODE)
Je lui dis dans quel table il doit trouver tout ça:
FROM groupes AS g, societes AS s, produits AS p
Et je rajoute un filtrage pour virer toutes les valeurs égales à 0 et garder celles supérieures à 0 selon le degré de pertinence:
WHERE MATCH (g.NomGroupe, g.AutreNomGroupe, g.Presentation, g.InfCompl,
s.NomSociete, s.AutreNomSociete, s.Presentation, s.InfCompl,
p.NomProduit, p.Presentation) AGAINST ('".$MotRech."' IN BOOLEAN MODE)
En résumé ça nous donnerait:
SELECT IdGroupe, NomGroupe, IdSociete, NomSociete, IdProduit, NomProduit,
MATCH (g.NomGroupe, g.AutreNomGroupe, g.Presentation, g.InfCompl,
s.NomSociete, s.AutreNomSociete, s.Presentation, s.InfCompl,
p.NomProduit, p.Presentation)
AGAINST ('".$MotRech."' IN BOOLEAN MODE)
FROM groupes AS g, societes AS s, produits AS p
WHERE MATCH (g.NomGroupe, g.AutreNomGroupe, g.Presentation, g.InfCompl,
s.NomSociete, s.AutreNomSociete, s.Presentation, s.InfCompl,
p.NomProduit, p.Presentation) AGAINST ('".$MotRech."' IN BOOLEAN MODE)
Testé en dur sous MyAdmin, ça me donne qq chose de très étrange que j'ai du mal à décrire. C'est comme s'il avait tenté des combinaisons d'id qui n'ont pas de rapport entre eux.
Le tableau de réponses comprend septs colonnes ainsi nommées:
IdGroupe
NomGroupe
IdSociete
NomSociete
IdProduit
NomProduit
MATCH (g.NomGroupe, g.AutreNomGroupe, g.Presentation, g.InfCompl, s.NomSociete, s.AutreNomSociete, s.Presentation, s.InfCompl, p.NomProduit, p.Presentation) AGAINST ('collecter' IN BOOLEAN
MODE)
Là je ne comprends plus rien. Juste une remarque: dans la colonne "MATCH etc.", il m'affiche '1'.
Petit à petit, on devient moins petit... mais qu'est-ce qu'on vieillit!