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

PHP & Base de données Discussion :

requête avec condition dans le where


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Homme Profil pro
    Educateur spécialisé
    Inscrit en
    Janvier 2012
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Educateur spécialisé
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2012
    Messages : 208
    Points : 118
    Points
    118
    Par défaut requête avec condition dans le where
    Bonjour à tous et à toutes,
    J'ai un système de recherche qui va chercher dans trois colonnes de ma bdd le mot ou les mots écris par le visiteur.
    Jusque là pas de souci mais je voudrais que la recherche se face uniquement ou le champ de la colonne aff_recherche est égal à 1 et la je n'y arrive pas.
    Tout s'affiche, même si le champ de aff_recherche est à 0.
    Voici la requête :
    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
     
    <?php
    $query_impr = $bdd_ajax->prepare('SELECT '.$mod_imprimante.' FROM '.$table.' WHERE aff_recherche = :aff AND 
    '.$mod_imprimante.' LIKE :mod_imp OR '.$ref_origine.' LIKE :ref_oem OR '.$fieldmarque.' LIKE :marq 
    GROUP BY '.$mod_imprimante.' ORDER BY '.$mod_imprimante.'');
    $query_impr->bindValue('mod_imp', '%'.$search.'%');
    $query_impr->bindValue('ref_oem', '%'.$search.'%');
    $query_impr->bindValue('marq', '%'.$search.'%');
    $query_impr->bindValue('aff', 1, PDO::PARAM_INT);
    try
    	{
    		$query_impr->execute();
    	}
    catch ( Exception $e )
    	{
    		echo ''.$e->getMessage().'<br />';
    		echo ''.$e->getCode();
    		exit();
    	}
    ?>
    Merci de votre aide.

  2. #2
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2020
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2020
    Messages : 34
    Points : 115
    Points
    115
    Par défaut
    Salut,
    AND a la priorité sur OR, du coup j'ai l'impression qu'il s'agit d'un simple problème de parenthèses.
    Si le problème est bien là il faut que tu modifies ta requête comme ceci:
    SELECT ... WHERE a AND (b OR c OR d) GROUP BY ...

  3. #3
    Membre régulier
    Homme Profil pro
    Educateur spécialisé
    Inscrit en
    Janvier 2012
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Educateur spécialisé
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2012
    Messages : 208
    Points : 118
    Points
    118
    Par défaut
    C'était bien ça.
    Merci beaucoup houd.ini

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

Discussions similaires

  1. [2008R2] Requéte SQL avec condition dans une select & champ calculé
    Par win_ubuntu dans le forum Développement
    Réponses: 0
    Dernier message: 12/05/2019, 17h30
  2. Compter avec condition dans une requête
    Par CHINAILLON dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 10/04/2008, 14h50
  3. Requêtes avec condition dans la clause where
    Par desmo dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 25/02/2008, 13h36
  4. Calcul requête avec conditions multiples
    Par Phullbrick dans le forum Access
    Réponses: 7
    Dernier message: 18/04/2006, 13h45
  5. Affichage ligne avec condition dans /etc/passwd
    Par mzt.insat dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 17/04/2006, 21h25

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