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 :

Afficher le resultat d'une requete avec clause


Sujet :

PHP & Base de données

  1. #1
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut Afficher le resultat d'une requete avec clause
    Slt à tous,

    Je fait appel à vous car j'aurais besoin d'un peu d'aide pour une requête.

    j'ai une bdd commande
    ID NUMCOM LOGIN ARTICLE1 ....
    1 1 Bob stylo
    2 1 Bob crayon
    3 2 Momo gomme
    4 2 Momo crayon
    etc...

    Je voudrais faire une requete pour pouvoir afficher les commandes par rapport au login et au numéro de commandes

    j'ai fais cela mais cela m'affiche que le premier article de la commande:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $sql100 = "SELECT * FROM commandes WHERE login='$login' GROUP BY NUMCOM"; 
    req100 = mysql_query($sql100) or die('Erreur SQL !<br />'.$sql100.'<br />'.mysql_error()); 
    while ($sortie = mysql_fetch_array($req100)){ ...
    Quelque est l'instruction pour faire afficher toutes les lignes en fonction du login et numéro de commande ?

    Merci

  2. #2
    Membre actif Avatar de Meloooo
    Femme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2008
    Messages : 324
    Points : 288
    Points
    288
    Par défaut
    Bonjour,
    Je pense juste que tu dois mettre un AND dans ta requête
    Remplacer ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql100 = "SELECT * FROM commandes WHERE login='$login' GROUP BY NUMCOM";
    Par ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sql100 = "SELECT * FROM commandes WHERE login='$login' AND NumeroCommande = 'NumeroCommande GROUP BY NUMCOM";

  3. #3
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 497
    Points : 12 600
    Points
    12 600
    Par défaut
    Si je me réfère aux exemples que tu donnes

    3 2 Momo gomme
    4 2 Momo crayon
    Il est normal que cela ne sorte qu'une seule ligne puisque tu regroupes (GROUP BY), tout les numéros de commandes en l'occurrence ici le deux, si tu veux tout enlève le GROUP BY.

  4. #4
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    d'accord mais si je supprime le group by
    cela va m'afficher toutes les ligne les une en dessous des autres .

    le problème c'est lorsque le client a plusieurs commande.
    je voudrais que les commande soit séparée

    exemple pour bob
    1 1 Bob stylo
    2 1 Bob crayon
    3 2 Momo gomme
    4 2 Momo crayon
    5 3 Bob encre
    6 3 Bob plume

    Bob à la commande 1 et 3
    je voudrais que ca affiche pour bob

    commande N°1
    stylo
    crayon

    commande N°3
    encre
    plume

    c'est pour que le client puisse consulter ces commandes quand il est dans son espace membre.

  5. #5
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    Citation Envoyé par Meloooo Voir le message
    Bonjour,
    Je pense juste que tu dois mettre un AND dans ta requête
    Remplacer ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql100 = "SELECT * FROM commandes WHERE login='$login' GROUP BY NUMCOM";
    Par ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sql100 = "SELECT * FROM commandes WHERE login='$login' AND NumeroCommande = 'NumeroCommande GROUP BY NUMCOM";
    Je ne peux pas car la requete est envoyé lorsque que le client arrive sur la page espace membre je n'est pas le numero de commande en variable.

  6. #6
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 497
    Points : 12 600
    Points
    12 600
    Par défaut
    Dans ce cas je le ferais en deux fois.

    Comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $panier = array();
     
    $sql100 = "SELECT NUMCOM FROM commandes WHERE login='$login' GROUP BY NUMCOM"; 
     
    while ($row = mysql_fetch_object($sql100)) {
     
        $sql101 = "SELECT ARTICLE1 FROM commandes WHERE NUMCOM =".$row->NUMCOM;
        while ($article = mysql_fetch_object($query)) {
     
            $panier[$row->NUMCOM][$article->ARTICLE1];
        }
    }
    var_dump($panier);

  7. #7
    Membre habitué Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Points : 193
    Points
    193
    Par défaut
    Slt ,
    j'ai une erreur on ligne....

    array(0) { }

    ??

Discussions similaires

  1. Réponses: 6
    Dernier message: 31/07/2006, 11h18
  2. [C#]afficher le resultat d'une requete
    Par dieudo dans le forum Windows Forms
    Réponses: 4
    Dernier message: 04/05/2006, 12h01
  3. afficher les resultats d'une requete mysql sur 3 colonnes
    Par harlock59 dans le forum Requêtes
    Réponses: 7
    Dernier message: 24/12/2005, 15h38
  4. [MySQL] Comparer le resultat d'une requete avec des fichiers
    Par Anakior dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 20/12/2005, 12h11
  5. Comment afficher le resultat d'une requete?
    Par Looping94510 dans le forum PostgreSQL
    Réponses: 8
    Dernier message: 11/02/2005, 09h42

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