Requete SQL pr Recherhce Multi

Résolu
muska92 Messages postés 317 Statut Membre -  
muska92 Messages postés 317 Statut Membre -
Bonjour,
Voila je cherche une requête Sql ( pour mouteur de recherche ) avec 3 critère ( Mots clé , Catégorie, région) .
je sais y'a une requête du style :
$requete. = (....);
$requete.= ( suite .. )
mais j'en sais pas plus .
merci de rependre
Configuration: Windows Vista
Safari 525.13

4 réponses

  1. nicorz Messages postés 108 Statut Membre 19
     
    Salut,

    je ne suis pas sur de comprendre,
    $sql = "SELECT * FROM articles WHERE keyword='".$keyword."' AND WHERE categorie='".$cat."' AND WHERE region='".$region."';
    

    Un truc comme ça ?
    0
  2. muska92 Messages postés 317 Statut Membre 42
     
    slt;
    la requête que je cherche et plus compliqué : 3 critère donc plusieurs combinaison possible :
    je récupère les valeur des 3 champs avec POST donc les combinaison possible sont :
    champ 1
    champ 1 + champ 2
    champ 1+ champ 3
    champ 1 + champ 2 + champ 3
    champ 2 + champ 3
    0
  3. nicorz Messages postés 108 Statut Membre 19
     
    Si j'ai compris, tu peux faire ainsi :

    if(isset($_POST['keyword'])){
       $where .= " WHERE keyword='".$_POST['keyword']."'"
    }
    if(isset($_POST['categorie'])){
       $where .= " WHERE keyword='".$_POST['categorie']."'"
    }
    if(isset($_POST['region'])){
       $where .= " WHERE keyword='".$_POST['region']."'"
    }
    
    $sql = "SELECT * FROM articles".$where;
    
    
    
    0
    1. FMC
       
      Je me permet de corriger l'exemple donné ci-dessus par :

      $where = "WHERE 1=1";
      
      if(isset($_POST['keyword'])){
         $where .= " AND keyword LIKE '%".mysql_real_escape_string($_POST['keyword'])."%'";
      }
      if(isset($_POST['categorie'])){
         $where .= " AND categorie LIKE '%".mysql_real_escape_string($_POST['categorie'])."%'";
      }
      if(isset($_POST['region'])){
         $where .= " AND region LIKE '%".mysql_real_escape_string($_POST['region'])."%'";
      }
      
      $sql = "SELECT * FROM articles".$where;
      0
  4. muska92 Messages postés 317 Statut Membre 42
     
    Merci beaucoup les gars pour votre aide.
    ça marche
    0