Moteur de recherche

bir -  
 bir -
Bonjour tout le monde !
En fait je voudrai savoir comment faire un moteur de recherche en php avec plusieurs mots clé.
Merci

1 réponse

  1. Canard007 Messages postés 5954 Date d'inscription   Statut Contributeur 216
     
    Bonjour,

    hé bien tout d'abord j'imagine qu'il faut une base de donnée ou tu fera le referencement.
    Puis ensuite une requete SQL qui recherchera en fonction des parametres "revelant" que tu auras choisis.
    0
    1. bir
       
      Salut!
      En fait joui j'ai créé ma base de données mysql et un formulaire permettant a l'utilisateur d'entrer ses données voici le formulaire:

      <html>
      <head>
      <title>Connexion au site</title>
      </head>
      <body>
      <form method="post" action="searchacti.php">
      <table border="0" width="400" align="center">
      Veuillez entrer les information concernant lEntreprise dont vous cherchez
      <tr>
      <td width="200"><b>*Activités</b></td>
      <td width="200">
      <input type="text" name="activité">
      </td>
      </tr>
      <tr>
      <td width="200"><b>Nom/Raison social</b></td>
      <td width="200">
      <input type="text" name="nom">
      </td>
      </tr>
      <tr>
      <td width="200"><b>Adresse</b></td>
      <td width="200">
      <input type="text" name="lieu">
      </td>
      </tr>
      <tr>
      <td colspan="2">
      <input type="submit" name="submit" value="Recherche">
      </td>
      </tr>
      </table>

      et voici la page searchacti.php:

      <?php

      $host = "localhost";

      $user = "moi";

      $password = "websms";

      $bdd = "sms";

      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");



      echo "

      <html>

      <head>

      <title>Résultat de la recherche</title>

      </head>



      <body>";





      if (($nom== "")||($nom == "%")) {

      // Si aucun mot clé n'a été saisi,

      // le script demande à l'utilisateur

      // de bien vouloir préciser un mot clé

      echo "

      Veuillez entrer un mot clé s'il vous plaît!

      <p>";

      }



      else {



      // On selectionne les enregistrements contenant le mot clé
      // dans les keywords ou le titre

      $query = "SELECT distinct count(id) FROM annuaire_9

      WHERE nom LIKE \"%$nom%\"


      ";



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

      <h2>Aucun résultat ne correspond à votre recherche</h2>

      <p>

      ";

      }



      // Sinon, on affiche le nombre d'enregistrements correspondant
      // et les résultats eux-mêmes

      else {

      $query = "SELECT distinct nom, ville, telephone, email, web FROM annuaire_9

      WHERE nom LIKE \"%$nom%\" ORDER BY id DESC

      ";



      $result = mysql_query($query);



      // Si un seul enregistrement est trouvé, on affiche un message au singulier

      if ($Nombre == "1") {

      echo "

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

      <p>";

      }



      // Dans le cas contraire le message est au pluriel...

      else {

      echo "

      <a name=\"#resultat\"><h2> $Nombre </h2></a>

      <p>";

      }







      while($row = mysql_fetch_array($result))

      {
      $nom = $row['nom'];
      $ville = $row['ville'];
      $telephone = $row['telephone'];
      $email = $row['email'];
      $web = $row['web'];


      echo "

      <p>\n

      <b>$row[2]</b>\n



      <p>\n

      ";

      }

      }



      }

      // on ferme la base

      mysql_close();

      ?>

      </body>

      </html>

      et a chaque fois quand je compile il me renvoit cette erreur:

      Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in .
      MERCI
      0