je suis en train de créé un site avec un catalogue de produits.
le catalogue est en place et j'aimerai maintenant intégrer sur le site un moteur de recherche en fulltext.
j'ai donc créé dans ma base un nom de clé que j'ai appelé : recherchemot type : full text avec comme champs associé les champ que je souhaite intégrer pour la recherche : type
nom, description
j'ai créé une requête avec un petit formulaire de recherche mais je n'arrive a sortir aucuns résultats.
Ou sont les erreurs ? est-ce la bonne methode ?
Merci de votre aide.
voici ma page recherche.php
<?php
if(isset($_POST['requete']) && $_POST['requete'] != NULL)
mysql_connect('xxx','xxx','x');
mysql_select_db('x');
$requete = htmlspecialchars($_POST['requete']);
$query = mysql_query("SELECT * FROM moncatalogue WHERE MATCH(type, nom, description ) AGAINST ('$requete') ORDER BY id DESC") or die (mysql_error());
$nb_resultats = mysql_num_rows($query);
if($nb_resultats != 0)
{
?>
<h3>Résultats de votre recherche.</h3>
<p>Nous avons trouvé <?php echo $nb_resultats;
if($nb_resultats > 1) { echo 'résultats'; } else { echo 'résultat'; }
?>
Résultats trouvées :<br/>
<br/>
<?php
while($donnees = mysql_fetch_array($query))
{
?>
<a href="recherche.php?id=<?php echo $donnees['id']; ?>"><?php echo $donnees['nom']; ?></a><br/>
<?php
}
?>
<br/>
<a href="recherche.php">Faire une nouvelle recherche</a></p>
<?php
}
else
{
?>
<h3>Pas de résultats</h3>
<p>Nous n'avons trouvé aucun résultat pour votre requête "<?php echo $_POST['requete']; ?>". <a href="recherche.php">Réessayez</a> avec autre chose.</p>
<?php
}
mysql_close();
}
else
{
?>
Rechercher :
<form action="recherche.php" method="Post">
<input type="text" name="requete" size="10">
<input type="submit" value="Ok">
</form>
<?php
}
?>