Phpmyadmin (wamp)

Bonjour,
J'utilise wamp. Je fais un site dynamique dans lequel j'ai crée un formulaire. Je souhaiterai faire une page de recherche. Par exemple:
Dans le formulaire je sélectionne "blond". Dans ma page de recherche, je tape "blond" et il me donne tous les utilisateurs qui ont sélectionné la case "blond".

Je ne sais pas comment faire pour faire cette page de recherche qui communique avce la base de donnés.
Merci d'avance de votre aide!

1 réponse

  1. Modérateur
    Bonjour,
    Tu postes ta question dans la section PHP du forum .. c'est donc que tu sais déjà qu'il te faudra utiliser ce langage pour le faire.
    Php tout seul ne suffira pas.. il te faudra également du HTML (avec certainement un peu de css).

    Tu peux donc déjà commencer par apprendre à faire un formulaire :
    https://www.commentcamarche.net/contents/793-php-recuperation-de-donnees

    Puis regarder comment se connecter à une Base de données et y faire des requêtes....

    NB : Pour la connexion à la BDD .. je te conseille la PDO
    //---------------------------------------------//
    // Connexion à la BDD via PDO
    //---------------------------------------------//
    $host = "localhost";
    $dbname = "nom_de_la_base";
    $user = "root";
    $pass = "";
    
    try {
        $dbh = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass,array(PDO::ATTR_PERSISTENT => true));
        $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    } catch (PDOException $e) {
        print "Erreur !: " . $e->getMessage() . "<br/>";
        die();
    }
    
    


    et pour faire une requête :
    
    $sql = "SELECT * 
                FROM matable 
                WHERE hair=:color";
    $params = array(":color"=>"blond");
    //On prepare l'insertion
    $requete= $dbh->prepare($sql); 
    $requete->execute($params);
    $result = $requete->fetchAll();
    


    1. J'ai déjà fait un formulaire PHP qui met les données rentrées dans la base de données wamp!
      J'utilise ainsi un PDO!

      <?php

      try
      {
      $bdd = new PDO('mysql:host=localhost;dbname=inscription;charset=utf8', 'root', '');
      }
      catch (Exception $e)
      {
      die('Erreur : ' . $e->getMessage());
      }
      ?>


      Cependant, je voudrais que ça soit l'utilisateur qui tape "blond",
      donc pour
      $params = array(":color"=>"blond");
      , comment je fais pour que le "blond" soit entré par l'utilisateur sur la page (consacrée à la recherche)?

      Est-ce que le deuxième code, que vous me proposez, fonctionne pour wamp?
    2. J'ai fait ça, mais cela ne marche pas:
      <?php  include ('connex.php'); 

      $chev=htmlspecialchars($_POST['cheveux']);

      $reponse=$bdd->query("SELECT * FROM inscription WHERE cheveux='$chev'");

      while($donnees = $reponse->fetch())
      {
      echo $donnees['chev'];
      }

      $reponse->closeCursor();

      ?>