Problème requete SQL match against

Résolu
Signaler
Messages postés
3
Date d'inscription
vendredi 10 octobre 2003
Statut
Membre
Dernière intervention
20 décembre 2009
-
Messages postés
3
Date d'inscription
vendredi 10 octobre 2003
Statut
Membre
Dernière intervention
20 décembre 2009
-
Salut,

J'ai un soucis avec une requete de type select match against !

Mes champs sont bien FULLTEXT

Si je lance cette requette :
    $sql = "SELECT t_pres
    FROM presentations
    WHERE
    MATCH (t_pres,moteur) AGAINST ('".$_POST['search']."')";

ça ne marche pas, j'ai une erreur sql !

Si je mets qu'un champs après MATCH là ça marche !!!

celle-ci
    $sql = "SELECT t_pres
    FROM presentations
    WHERE
    MATCH (t_pres) AGAINST ('".$_POST['search']."')";

et
    $sql = "SELECT t_pres
    FROM presentations
    WHERE
    MATCH (moteur) AGAINST ('".$_POST['search']."')";

fonctionnent !!!!

Pourtant l'aide précise bien que l'on peut metre plusieurs champs, donc si quelqu'un à une idée !!!

Merci d'avance !

2 réponses

Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
9
Salut,

C'est parceque tu n'as pas créé d'indexe FULLTEXT sur les deux champs (mais deux indexes, un pour chaque champs).

Lance la requête suivante sur ta base de donnée pour créer cet indexe. Tu pourrax ensuite utiliser MATHC(t_pres,moteur)

ALTERTABLE`presentations`ADDFULLTEXT(`t_pres`,`moteur`);

A+
Messages postés
3
Date d'inscription
vendredi 10 octobre 2003
Statut
Membre
Dernière intervention
20 décembre 2009

Cool, merci j'ai compris, faut indexer tout les champs qu'on cherche et chercher tout les champs qu'on a indexé !!!!

Sinon erreur !