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 :

Affichage impossible de plusieurs résultats


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut Affichage impossible de plusieurs résultats
    bonjour
    oulalala j'ai le cerveau en compote..
    je me prends la tête sur un truc depuis plusieurs heures sans vraiment trouver de réponse..

    voilà, grâce à ma requete je selectionne le nombre de produits achetés en fonction du numéro de commande et du numéro de client.
    mais voilà, si le client a acheter plusieurs produits, ça ne m'affiche q'un seul..

    voici mon code :

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    $requetepseudo = "SELECT num_cli from client where pseudo = '".$pseudo."'";
     
     $req = mysql_query ($requetepseudo) or die (mysql_error());
     if($req)
     {
    $datapseudo = mysql_fetch_array($req);
     
    if($datapseudo)
        {
       if ($requet = "SELECT a.ref_produit, a.designation_produit, a.quantite, l.etat_livr 
       FROM acheter a, livraison l, commande c WHERE c.num_com = '".$_POST['num_com']."' AND a.num_cli = '".$datapseudo[0]."' ")
     
     $res = mysql_query($requet);
     
    while($data = mysql_fetch_array($res))
    {
    echo "<table border='6' cellspacing='5' cellpadding='1' align=center  bordercolor = 'black' bgcolor = '#969696' color = 'grey'>";
     
       echo"<tr><td>reference du produit </td><td> ";
       echo $data['ref_produit']."</td></tr>";
       echo"<br>";
       echo"<tr><td>designation du produit </td><td> ";
          echo $data['designation_produit']."</td></tr>";
          echo"<br>";
       echo "<tr><td>quantite </td><td> ";
        echo $data['quantite']."</td></tr>";
     
     echo"<br>";
         echo"<tr><td>etat de la livraison </td><td>";
          echo $data['etat_livr']."</td></tr>";
          echo"<br>";
     
        break;
       }
       }
      }
     }
    en faite ce que je fais, c'est qu'à partir du pseudo je recherche le numéro client (car le client peut acheter si et seulement si il est inscrit sur le site (pseudo + mdp)
    puis à partir de là, je fais ma requete de recherche de produit acheter, afin que le client puisse verifier l'état de sa livraison ..

    donc si quelqu'un pourrait m'aider se serait cool .. je l'en remercie grandement d'avance..

  2. #2
    Rédacteur

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 695
    Par défaut
    Ta requete est pas bonne.
    Premier truc qd un tel script marche pas -> echo de la requete, copier-coller et hop, dans phpmyadmin

    SELECT a.ref_produit, a.designation_produit, a.quantite, l.etat_livr FROM acheter a, livraison l, commande c WHERE c.num_com = '".$_POST['num_com']."' AND a.num_cli = '".$datapseudo[0]."' ")
    le pb ici c'est que tu ne relis pas tes trois tables entre elles.
    Tu ne leur indique nul part les correspondance entre elles (les jointures)
    Par exemple ta table livraison, dans ta requete, est completement volante, tu cherche l.etat_livr , mais tu n'as indiqué nul part que tu le veux pour LA commande $_POST['num_com']

    Au pire, si tu m'envoie un export de tes tables par MP, je veux bien te faire la requete qui va avec.
    Articles sur developpez.com
    - Gestion des exceptions avec PHP5
    - Chiffrement et hash en PHP contre l'attaque Man in the middle
    - Aedituus - Espace membre sécurisé en PHP5

  3. #3
    Membre éclairé Avatar de tigunn
    Homme Profil pro
    Développeur de bug
    Inscrit en
    Janvier 2003
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de bug

    Informations forums :
    Inscription : Janvier 2003
    Messages : 608
    Par défaut
    Salut

    le probleme vient de la fonction

    mysql_fetch_array -- Retourne une ligne de résultat MySQL sous la forme d'un tableau associatif, d'un tableau indexé, ou les deux

    il faut que tu rajoute une boucle sur les lignes retournées par mysql_query.


    foreach (row....) par exemple.

    Bon dev

    ps: nice forum yet.

  4. #4
    Rédacteur

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 695
    Par défaut
    while($data = mysql_fetch_array($res))

    c'est pas une boucle ça?
    Articles sur developpez.com
    - Gestion des exceptions avec PHP5
    - Chiffrement et hash en PHP contre l'attaque Man in the middle
    - Aedituus - Espace membre sécurisé en PHP5

  5. #5
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    oui j'ai dejà mis une boucle et c'est pour ça que je ne comprends pas pourquoi ça ne marche pas..

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Par défaut
    Et mysql_num_rows($res) vaut combien?

Discussions similaires

  1. affichage de plusieurs résultats d'une même table
    Par tiomil60 dans le forum Requêtes
    Réponses: 4
    Dernier message: 13/09/2012, 16h46
  2. [MySQL] Requete SQL pour affichage de plusieurs résultats par rapport à un ID
    Par tyler94 dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 27/12/2011, 14h15
  3. probleme affichage pour plusieurs résultats
    Par PAYASS59 dans le forum PL/SQL
    Réponses: 1
    Dernier message: 16/03/2011, 19h44
  4. Réponses: 7
    Dernier message: 26/09/2005, 17h50
  5. [Débutant] Affichage impossible en local
    Par Alberto dans le forum ASP
    Réponses: 2
    Dernier message: 29/11/2003, 16h45

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