Rechercher : dans
Par :

Pb moteur de recherche

Dernière réponse le 22 fév 2006 à 11:58:36 Kalamya, le 2 mar 2005 à 21:17:32 
 Signaler ce message aux modérateurs

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".

Meilleures réponses pour « Pb moteur de recherche » dans :
PHP - Créer un moteur de recherche Voir Idée générale Le moteur de recherche ci-dessous ne correspond qu'à une idée possible de moteur de recherche simple, ne gérant qu'un seul mot clé. Le concept du fonctionnement de ce moteur est de créer une base de donnée contenant les mots clés de...
Référencer son site : les moteurs de recherche VoirVoici quelques autres "trucs" à savoir pour référencer un site. Les moteurs de recherche où il faut à tout prix présenter son site : 1) DMOZ ( www.dmoz.org). Ce site est très important car Google, Yahoo, Lycos, Voila... vont tous rechercher des...
[IE 7 et 8] Modifier le moteur de recherche par défaut VoirPour Internet Explorer 7 Ouvrez Internet Explorer. Faites un clic sur la flèche dans la barre de recherche en haut à droite. Cliquez sur "Modifier les paramètres de recherche par défaut". Vous pouvez : Définir un moteur de recherche...
Comment utiliser efficacement les moteurs de recherche ? VoirComment utiliser efficacement les moteurs de recherche ? Si Internet représente une masse d'informations colossale, il peut être fastidieux de trouver le renseignement que vous recherchez. Pourtant, il est possible d’optimiser ses requêtes pour...
Web - Moteur de recherche VoirIl existe une énorme quantité d'informations sur Internet (plusieurs millions ou milliards de documents), et ces informations sont pour la plupart renouvelées quotidiennement. Le moteur de recherche est un élément indispensable pour s'y...

1

Kalamya, le 2 mar 2005 à 21:30:14

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à :)

Répondre à Kalamya

2

 bir, le 22 fév 2006 à 11:58:36

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

Répondre à bir