Problème de requête fulltext MYSQL [Résolu]

Signaler
Messages postés
11
Date d'inscription
mercredi 2 avril 2003
Statut
Membre
Dernière intervention
10 mai 2006
-
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
Bonjour, j'ai un problème avec une certaine requête fulltext



La voici:

$query = "SELECT title,site,nb_view,no,date,starred,name,no_cache,data FROM news WHERE MATCH (title,data) AGAINST ('$word') $finrequete";

$result = mysql_query($query);

while($row = mysql_fetch_row($result)){

$title = $row[0];

[...]

}



En fait, tout fonctionne lorsque je n'indique qu'un seul MATCH à mysql MATCH (title) AGAINST ('$word') mais lorsque je lui en indique 2 ou plus ... c'est la galère.



Php me donne l'erreur suivante:

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in C:\www\[...]\search-news.php on line 40


Mes deux tables title et data sont en fulltext et le match fonctionne
aussi bien avec title que data, mais pas les deux en même temps, aidez
moi svp !!!

5 réponses

Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Il faut que tu crées ton index sur deux colonnes. Crée un index sur deux colones et hop ça fonctionnera.

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Salut,



tu as bien un index FULLTEXT sur le champ data ?

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
11
Date d'inscription
mercredi 2 avril 2003
Statut
Membre
Dernière intervention
10 mai 2006

Oui, c'est sa que j'ai précisé


<<Mes deux tables title et data sont en fulltext et le match fonctionne
aussi bien avec title que data, mais pas les deux en même temps, aidez
moi svp !!!>>
Messages postés
11
Date d'inscription
mercredi 2 avril 2003
Statut
Membre
Dernière intervention
10 mai 2006

merci beaucoup a toi !! mais j'ai créé un FULLTEXT sur deux colone et
non un index ... je ne sais pas si c'est pareil, mais sa fonctionne,
merci encore !!
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Pas de problème.



Disons que l'index sur deux colonnes est plus approprié d'abord dans ta requête puisqu'il permet de la faire fonctionner (mdr)



Ensuite mettons que tu ais une requête du style SELECT machin,truc FROM table WHERE machin=5 AND truc=6



Il vaut mieux créer un INDEX (pas fulltext, un index normal) sur deux
colonnes (machin et truc) plutôt que un index pour machin et un index
pour truc ;-)



a +

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>