Requête en SQL - Formulaire de recherche

Résolu
Bonjour!

Je suis actuellement en train de coder un formulaire en php/mysql pour un site perso. J'aimerais savoir s'il existerait un champ en mysql qui signifie "peut prendre toutes les valeurs".

Je m'explique :
L'utilisateur pourra cocher ses critères de recherche :
Voiture : Couleur - Rouge, Jaune, Bleue, Noire, Pas de préférence
Marque - Française, Allemande, Japonaise, Pas de préférence
etc...

A l aide de ce formulaire, je récupère les valeurs couleur, marque dans $couleur, $marque puis je crée ma requête du style
SELECT nom FROM voiture WHERE couleur = $couleur AND marque = $marque

Seulement que faire si l'utilisateur n'a pas spécifié tous les critères ?
Merci pour votre aide et à ceux qui auront de bonnes idées pour moi!

3 réponses

  1. A la palce d'un AND tu Peux mettre un OR
    1. Tu peux aussi mettre a null les variable si elles sont vides
    2. en vérité cela ne répond pas exactement à mon problème, car j'aimerais avoir (quels que soient les critères remplis par l'utilisateur) toujours la même requête SQL à envoyer, et donc avec des AND dans le cas ou l'utilisateur spécifie tous les attributs.
  2. Modérateur
    Salut,

    tu supprimes le WHERE couleur = ?

    Ou tu imagines un couleur like "*"
    1. mais oui c'est ca en utilisant des like !!
      Merci beaucoup tu as trouvé l'idée qu'il fallait !

      -zazibut