IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Requête multicritère PHP-Mysql


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 130
    Points : 55
    Points
    55
    Par défaut Requête multicritère PHP-Mysql
    Bonjour,

    J'ai crée un site de locations de vacances.
    Je peux faire des recherches par département, par type de logement.
    Mais ca reste des requtes avec un seul critere de selction.

    J'aimerai mettre en place un systeme de recherche multicritere:

    Dans ma base sql, j'ai le champ département, type et capacité.

    Comment faire en sorte que l'utilisateur puise choisir grace a 3 liste deroulantes, les chalets du départment de la Savoie d'une capacité de 5 personnes ? pour exemple

    et lorsque'il valide, tous les enregistrements qui correspondent a cette requet apparaissent.

    Merci de votre aide

  2. #2
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 681
    Points
    18 681
    Par défaut
    ben suffit de mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE condition1 AND condition2 AND condition3
    si en plus, tu souhaites que les listes se modifient en fonction de ce qu'il y a dans la base, tu devrais regarder du côté d'ajax
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 130
    Points : 55
    Points
    55
    Par défaut
    Merci de ton aide

    Et pour associer cette requete avec les 3 listes deroulantes, je ne vois pas trop comment mettre ca en place.

    Connaissez vous des zxemples de recherche multicriteres avec des listes deroulantes?

    Merci d'avance

  4. #4
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 681
    Points
    18 681
    Par défaut
    ben chaque liste a un "name" distincts, donc je ne vois pas trop le problème...
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 130
    Points : 55
    Points
    55
    Par défaut
    Je vous montre mon code avec mes 3 listes déroulantes pour effectuer une recherche multicritères à partir des valeurs d'ine table mysql.

    Grace a 3 listes déroulantes, je peux afficher les enregistrements qui correspondent aux 3 valeurs choisis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    <?php
    $base = mysql_connect ('', '', '');
    mysql_select_db ('', $base); 
    ?>
     
     
     
    <body><form name="form1"><table><tr><td>
     <select  name="dptGite" size="1" >
     
                <option value="Alsace">Alsace</option>
                <option value="Aquitaine">Aquitaine</option>
                <option value="Auvergne">Auvergne</option>
                <option value="Basse Normandie ">Basse Normandie </option>
                <option value="Bourgogne">Bourgogne</option>
                <option value="Bretagne">Bretagne</option>
                <option value="Centre">Centre</option>
                <option value="Champagne-Ardenne">Champagne-Ardenne</option>
                <option value="Corse">Corse</option>
                <option value="D.O.M. T.O.M. ">D.O.M. T.O.M. </option>
                <option value="Franche Comté ">Franche Comté </option>
                <option value="Haute Normandie ">Haute Normandie </option>
                <option value="Ile de France">Ile de France </option>
                <option value="Languedoc-Roussillon ">Languedoc-Roussillon </option>
                <option value="Limousin ">Limousin </option>
                <option value="Lorraine">Lorraine</option>
                <option value="Midi-Pyrénées">Midi-Pyrénées</option>
                <option value="Nord-Pas de Calais">Nord-Pas de Calais</option>
                <option value="P.A.C.A. ">P.A.C.A. </option>
                <option value="Pays de la Loire ">Pays de la Loire </option>
                <option value="Picardie ">Picardie </option>
                <option value="Poitou-Charentes ">Poitou-Charentes </option>
                <option value="Rhône-Alpes">Rhône-Alpes</option>
              </select></td>
          </tr>
     
     
          <tr> 
     
            <td> <select name="typeGite" size="1" >
                <option>-------Type-------</option>
                <option value="appartement">Appartement</option>
                <option value="camping">Camping</option>
                <option value="chalet">Chalet</option>
                <option value="chambre d hôtes">Chambre d'hôtes</option>
                <option value="gîte">Gîte</option>
                <option value="hôtel">Hôtel</option>
                <option value="maison">Maison</option>
                <option value="studio">Studio</option>
                <option value="villa">Villa</option>
              </select></td>
          </tr>
          <tr> 
     
            <td>
            <select name="capaciteGite" size="1" >
              <option value="2 personnes maximum">2 personnes maximum</option>
                <option value="3 personnes">3 personnes</option>
                <option value="4 personnes">4 personnes</option>
                <option value="5 personnes">5 personnes</option>
                <option value="6 personnes">6 personnes</option>
                <option value="7 personnes">7 personnes</option>
                <option value="8 personnes">8 personnes</option>
                <option value="9 personnes">9 personnes</option>
                <option value="10 personnes">10 personnes</option>
                <option value="entre 10 et 20 personnes">entre 10 et 20 personnes</option>
                <option value="plus de 20 personnes">plus de 20 personnes</option>
                </select></td></tr>
                <tr><td>
                <input type="submit" name="envoi" value="envoi!"  ></td></tr></form>
    </body>
    </html>
    Mais jje ne sais pas trop ou mettre la requete:

    <option name="SELECT FROM gites WHERE capaciteGite=10 personnes" value="10 personnes">10 personnes</option>
    <option name="SELECT FROM gites WHERE dptGite=Alsace" value="Alsace">Alsace</option>

    Je ne sais pas si je suis bien clair

    Merci de votre aide

  6. #6
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 681
    Points
    18 681
    Par défaut
    tu n'as pas l'air de bien saisir ce que tu fais...

    la requête est à effectuer hors du formulaire.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $base = ...
    mysql_select_db...
     
    $req = "SELECT * FROM gites WHERE departement=$_POST['dptGite'] AND type=$_POST['typeGite'] AND capacite=$_POST['capaciteGite'] ";
     
    $res = mysql_query($req,$base);
     
     
    if (mysql_num_rows != 0) {
      while ($arr = mysql_fetch_array($res)) {
        echo $arr["nom"] . " " .   echo $arr["adresse"];
      }
    else
      echo "aucun résultat";

    à adapter bien sûr
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Requête REGEXP PHP/MySQL
    Par kl4im dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 25/05/2013, 13h07
  2. [MySQL] Recherche multicritères php MySql
    Par Gourou1 dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 13/03/2013, 10h53
  3. Requête de php/mysql sur apache, debian vers sql server 2008
    Par tansel dans le forum Développement
    Réponses: 0
    Dernier message: 08/08/2012, 09h50
  4. [MySQL] Recherche multicritères PHP/MySQL
    Par didigue dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 29/09/2008, 14h32
  5. Recherche multicritère PHP-MySql
    Par pod1978 dans le forum Débuter
    Réponses: 4
    Dernier message: 14/10/2006, 23h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo