Pb moteur de recherche

Résolu/Fermé
Kalamya - 2 mars 2005 à 21:17
 bir - 22 févr. 2006 à 11:58
Salut à tous :)

Je me suis inspirée des sources disponibles sur ce site pour créer un moteur de recherche selon mes besoins. Le problème.. un message d'erreur.. J'ai besoin de vos lumières.

Voici le code :

-----------------------------------------------------------------

<?php
require ("../config/config.php");
$db = mysql_connect("$host", "$login", "$pass") or die("Base de données indisponible");
mysql_select_db("$base",$db);
$Mot=$_POST['Mot'];
$champs=$_POST['R1'];

if (($Mot == "")||($Mot == "Votre mot-clé ici !")) {
echo "
<b>Veuillez entrer un mot-clé !</b>
<p>";
}
else {

$query = "SELECT distinct count(id) FROM produits
WHERE $champs LIKE \"%$Mot%\"
";
$result = mysql_query($query);

$row = mysql_fetch_row($result);

$Nombre = $row[0];

if ($Nombre == "0") {

echo "

Aucun résultat ne correspond à votre recherche \"<b>$Mot
</b>\"
<p>

";

}

else {

$query = "SELECT distinct modele,ref,description FROM produits

WHERE $champs LIKE \"%$Mot%\" ORDER by titre DESC";

$result = mysql_query($query);

if ($Nombre == "1") {

echo "

<a name=\"#resultat\">Résultat: Un produit trouvé</a>

<p>";

}

else {

echo "

<a name=\"#resultat\">Résultat: <b>$Nombre produits trouvés</b></a>

<p>";

}

while($row = mysql_fetch_row($result))

{
$num = $row['id'];
$ref = $row['ref'];
$type = $row['type'];
$modele = $row['modele'];
$date = $row['date'];
$promo = $row['promo'];

echo "<A href='fiche_produit.php?id=$num'>$type <b>$modele</b> (Référence n° $ref), ajouté le <i>$date</i></A><br><br>";
}
}
}
mysql_close();

?>

-----------------------------------------------------------------

Il m'indique effectivement le nombre de résultats trouvés (s'il en trouve). Par contre, là où les résultats devraient s'afficher, c'est ce message qui apparait :

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-7\www...

Quelqu'un aurait il une idée ?

Merci :)

PS : Pour info, "R1" est une série de 3 cases d'option dont les valeurs sont respectivement "modele", "ref","description".

1 réponse

Kalamya
Messages postés
47
Date d'inscription
mercredi 2 mars 2005
Statut
Membre
Dernière intervention
19 octobre 2008

2 mars 2005 à 21:30
Ca y est, j'ai trouvé la soluce !
Pour ceux que cela pourrait intéresser, j'ai modifié deux passages :

$query = "SELECT distinct id,type,date,modele,ref,description FROM produits

WHERE $champs LIKE \"%$Mot%\" ORDER BY id DESC";

(...)

while($row = mysql_fetch_array($result))

{
$num = $row['id'];
$ref = $row['ref'];
$type = $row['type'];
$modele = $row['modele'];
$date = $row['date'];

(Même champs que cités plus haut)

Voilà :)
0
Salut!
Voila j'ai fait la méme chose que toi mais toujours la meme erreur.
Pouvez vous comment vous avez fait votre scripte plus clairement .
Merci de comprehension
0