Requête avec OR et AND

Résolu
Bonjour,

Je suis entrain de développé un site en php mais je me heurte à un problème auquel je ne trouve pas de solution.

Je souhaite faire un module de recherche permettent de choisir plusieurs options.

Voici la requéte que je souhaite faire :

SELECT * FROM ventes  WHERE  id_vendeur = '1'  AND marque LIKE '%".secure($_POST['recherche_mot'])."%' OR model LIKE '%".secure($_POST['recherche_mot'])."%'


Seulement de cette façon il ne prend en compte que le OR model LIKE '%".secure($_POST['recherche_mot'])."%'

J'imagine qu'il y à une astuce pour faire ce genre de chose mais la quel ?

Merci d'avance pour votre aide.

4 réponses

  1. Bonjour,

    Simple factorisatio selon algèbre de BOOLE, il vous faut des parenthèses:

    AND s'écrit .
    OR s'écrit +

    A . ( B + C)

    n'est pas équivalent à

    (A . B) + C

    Vous avez saisi?

    Donc,

    SELECT * FROM ventes  
    WHERE  id_vendeur = '1'  
        AND (marque LIKE '%".secure($_POST['recherche_mot'])."%' OR model LIKE '%".secure($_POST['recherche_mot'])."%')


    A+
    1. Je crois que le OR et le AND doivent aller après le LIKE, essais voir.
      1. Merci beaucoup pour vos réponses.

        J'ai effectivement fait de cet manière mpmp93 et c'était bien la solution.

        Encore merci pour votre aide ce sujet est donc résolus :)