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 :

pas d'affichage avec une succession de critères [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 184
    Points : 65
    Points
    65
    Par défaut pas d'affichage avec une succession de critères
    bonjour,

    j' ai un soucis avec cette ligne ci dessous qui ne m'affiche rien.
    est ce que la synthaxe est bonne pour la succession de where?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     $Resul=$pdo->query ( "select * from CLASSE WHERE SALLE='A1' and SALLE=A2' and SALLE=A3' and SALLE=A4'  ORDER BY NUM DESC; ");
    merci

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Non, la syntaxe n'est correcte. Pour deux raisons :

    D'abord, techniquement : il faut que toutes les chaines soient encadrées par des quotes. Or là, pour A2, A3 et A4, tu n'as que la quote fermante et pas la quote ouvrante. Donc la requête techniquement correcte serait celle-ci :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from CLASSE WHERE SALLE='A1' and SALLE='A2' and SALLE='A3' and SALLE='A4'  ORDER BY NUM DESC

    Ensuite, (une fois la requête corrigée techniquement), il me semble qu'il y a un problème de logique : tu demandes un cours qui a lieu dans plusieurs salles à la fois. Est-ce ce que tu veux ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2013
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 184
    Points : 65
    Points
    65
    Par défaut
    merci pour votre réponse ,mais je n'ai toujours rien qui s'affiche.
    concernant la logique , j'ai 3 niveaux avec plusieurs salles ,je desire afficher les salles en fonctions des niveaux .
    1er niveau salle en A (A1,A2.....)
    2eme niveau salle en B (B1,B2,....)
    3eme niveau salle en C (C1,C2,......)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (!empty($_POST['Salles']) && !empty($_POST['niveaux'])) {
    if(($_POST['Salles']== "Tout") AND ($_POST['niveaux'] == "Tout"))
    {
     $Resul=$pdo->query ( "select * from CLASSE WHERE SALLE='A1' and SALLE='A2' and SALLE='A3' and SALLE='A4'  ORDER BY NUM DESC; ");
    }

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Donc tu cherches un cours qui se passe dans une des salles A1, A2, A3 et A4. Essaye avec l'opérateur IN :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from CLASSE WHERE SALLE IN('A1', 'A2', 'A3', 'A4')  ORDER BY NUM DESC;
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

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

Discussions similaires

  1. Problème d'affichage avec une liste à puces
    Par Maxence45 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 09/07/2007, 21h09
  2. affichage avec une condition double
    Par Cantalou dans le forum IHM
    Réponses: 2
    Dernier message: 03/05/2007, 18h44
  3. affichage avec une infobulle
    Par snetechen dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 09/02/2007, 14h38
  4. Pas à pas dans eclipse avec une appli tomcat
    Par Mister Nono dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 07/09/2006, 09h00
  5. [Excel] fonction SOMME.SI avec une cellule pour critère
    Par repié dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/03/2006, 17h39

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