Moteur de recherche Warning: mysql_fetch_row

Fermé
Aresledieu Messages postés 32 Date d'inscription vendredi 29 janvier 2010 Statut Membre Dernière intervention 22 septembre 2021 - Modifié par Aresledieu le 6/10/2010 à 18:36
Aresledieu Messages postés 32 Date d'inscription vendredi 29 janvier 2010 Statut Membre Dernière intervention 22 septembre 2021 - 6 oct. 2010 à 18:47
Bonjour,

je viens de finir un moteur de recherche que j'ai pris sur https://www.commentcamarche.net/contents/801-php-creer-un-moteur-de-recherche
J'ai bien les résultats qui s'affichent, mais j'ai aussi une erreur "Warning: mysql_fetch_row():" pour la ligne 46 (en gras) d'affichée aussi.
Je pense ne pas avoir fait de boulettes dans le code, mais je ne suis pas à l'abris.
Pour info, je teste le script sur un site hébergée chez Free.

Je vous redonne le code pour aider :
<?php 
$host = "xxxx"; 

$user = "xxxx"; 

$password = "xxxx"; 

$bdd = "search"; 

mysql_connect($host, $user, $password) or die ("Connexion au serveur impossible"); 

// on choisit la bonne base 
mysql_select_db($bdd) or die ("Connexion a la base impossible"); 
$Mot=$_GET['search']; 
echo " 
<html> 
<body>"; 

if (($Mot == "")||($Mot == "%")) { 
// Si aucun mot clé n'a été saisi, 
// le script demande à l'utilisateur 
// de bien vouloir préciser un mot clé 

 echo " 
 <strong>Vous n'avez saisi aucun mot clé pour la recherche.</strong> 
 "; 

} 
else { 
// On selectionne les enregistrements contenant le mot clé 
// dans les keywords ou le titre 
 $query = "SELECT distinct count(lien) FROM search 
 WHERE keyword LIKE \"%$Mot%\" 
 OR titre LIKE \"%$Mot%\" 
 "; 

 $result = mysql_query($query); 

 $row = mysql_fetch_row($result); 

 $Nombre = $row[0]; 

// Si aucun enregistrement n'est retourné, 
// on affiche un message adéquat 
if ($Nombre == "0") { 
 echo " 
 <strong>Votre recherche sur le mot \"$Mot\" n'a donné aucun résultat.</strong> 

 "; 

} 

// Sinon, on affiche le nombre d'enregistrements correspondant 
// et les résultats eux-mêmes 
else { 
 $query = "SELECT distinct lien,keyword,titre,resume FROM search 
 WHERE keyword LIKE \"%$Mot%\" 
 OR titre LIKE \"%$Mot%\" ORDER by titre ASC"; 

 $result = mysql_query($query); 

 // Si un seul enregistrement est trouvé, on affiche un message au singulier 
 if ($Nombre == "1") { 
 echo " 
 <result name=\"#resultat\">Votre recherche sur le mot \"$Mot\" a donné un résultat.</result> 
 <hr /> 

 <p>"; 

 } 
 // Dans le cas contraire le message est au pluriel... 
 else { 
 echo " 
 <result name=\"#resultat\">Votre recherche sur le mot \"$Mot\" a donné $Nombre résultats.</result> 
 <hr /> 

 <p>"; 

 } 
 while($row = mysql_fetch_row($result)) 
 { 
  echo " 
  <p>\n 
  <li style=\"margin-top:10px\">$row[2]</li>\n 
  <p><a href=\"../index.php?lien=$row[0]\">Visualiser l'article</a></p> 
  <p>\n 
  "; 

 } 
} 

} 

// on ferme la base 
mysql_close(); 

?> 

</body> 

</html>


Merci d'avance.
A voir également:

1 réponse

Aresledieu Messages postés 32 Date d'inscription vendredi 29 janvier 2010 Statut Membre Dernière intervention 22 septembre 2021 13
6 oct. 2010 à 18:47
Problème résolue.
0