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 select qui ne retourne qu'une seule ligne


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 16
    Points : 14
    Points
    14
    Par défaut requête select qui ne retourne qu'une seule ligne
    salut tous monde, j'ai besoin de votre aide

    j'essaye de sélectionner des information venant de 2 tables de ma base de donné.

    voici la requette:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $dat=$_POST['dat'];
     
    $query_Recordset1 = "SELECT vente.article, vente.caissier, vente.qte, vente.pv,stok.pu,vente.heurv, vente.commentair, ( vente.pv-stok.pu ) *  vente.qte
    FROM vente, stok
    WHERE vente.heurv>'$dat'	
     AND stok.nom = vente.article
    ";
    $Recordset1 = mysql_query($query_Recordset1, $kor) or die(mysql_error());
    $totalRows_Recordset1 = mysql_num_rows($Recordset1);
    echo $totalRows_Recordset1;

    je récupère $dat a partir d'un formulaire.
    le problème est que cette requête renvoie une seule ligne lors de l'envoie de formulair (submit).alors que normalement elle envoie 2 ligne.lorsque je clic une 2 ème fois sur submit le 2 ème ligne s'affiche alors.je comprend pas ou est la faute dans mon code.svp aidez moi c'est très urgent .merci pour vous tous.

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 37
    Points : 28
    Points
    28
    Par défaut
    essai ca déjà

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $query_Recordset1 = "SELECT vente.article, vente.caissier, vente.qte, vente.pv,stok.pu,vente.heurv, vente.commentair, ( vente.pv-stok.pu ) *  vente.qte
    FROM vente, stok
    WHERE vente.heurv> '".$dat."'	
     AND stok.nom = vente.article
    et pour stok.nom = vente.article :
    vente.article est bien une clée étrangère de stok.nom ?


    et pour :
    mysql_num_rows($Recordset1);

    tu cherche a récupe le nombre d'enregistrements ou un résultat car si tu cherche un résultat c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_fetch_array($Recordset1);
    et pour finir ( vente.pv-stok.pu ) * vente.qte je voi pas trop ce que ca fait la ...

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 16
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par bleubykey Voir le message
    essai ca déjà

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $query_Recordset1 = "SELECT vente.article, vente.caissier, vente.qte, vente.pv,stok.pu,vente.heurv, vente.commentair, ( vente.pv-stok.pu ) *  vente.qte
    FROM vente, stok
    WHERE vente.heurv> '".$dat."'	
     AND stok.nom = vente.article
    et pour stok.nom = vente.article :
    vente.article est bien une clée étrangère de stok.nom ?


    et pour :
    mysql_num_rows($Recordset1);

    tu cherche a récupe le nombre d'enregistrements ou un résultat car si tu cherche un résultat c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_fetch_array($Recordset1);
    et pour finir ( vente.pv-stok.pu ) * vente.qte je voi pas trop ce que ca fait la ...
    merci bien pour vous mais ça n'a pas marcher ,elle affiche toujours une seule ligne.

    pour stok.nom = vente.article : représente tous les deux le nom de l'article.mais puisque je suis débutante j'ai oublier de leur donner le même nom.


    mysql_num_rows($Recordset1);:je l'utilise juste pour vérifier si le problème est dans mon affichage ou dans la requette .je trouve que nombre de ligne lors de l'envoie de requette est 1.
    pour récupérer les enregistrement j'utilise: mysql_fetch_row($Recordset1);


    ( vente.pv-stok.pu ) * vente.qte: (prix de vente-prix d'achat)* quantité vendu.
    pour calculer combien il a gagner par article je dois aussi calculer le total pour tous les articles mais je sais pas comment l'intégrer dans cette requette qui n'a pas marcher.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 37
    Points : 28
    Points
    28
    Par défaut
    Tu dois faire cette opératoin dans ton "where" tu doit faire une imbriquée je pense mais je ne connai pas tes tables...

  5. #5
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 16
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par bleubykey Voir le message
    Tu dois faire cette opératoin dans ton "where" tu doit faire une imbriquée je pense mais je ne connai pas tes tables...
    je sais pas comment le faire,ma requette marche correctement pour le moment mais j'arrive toujours pas à lui ajouter la fonction sum pour calculer la somme de bénéfice de tous les articles,
    voici la requette actuel et elle fonctionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $query_Recordset1 = "SELECT vente.article, vente.caissier, vente.qte, vente.pv,stok.pu,vente.heurv, vente.commentair, ( vente.pv-stok.pu ) *  vente.qte 
    FROM vente, stok
    WHERE vente.heurv >='".$dat."'	
     AND stok.nom = vente.article
    ";
    j'ai esseyer de lui ajouter la fonction sum de cette manière:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $query_Recordset1 = "SELECT vente.article, vente.caissier, vente.qte, vente.pv,stok.pu,vente.heurv, vente.commentair, ( vente.pv-stok.pu ) *  vente.qte ,sum( ( vente.pv-stok.pu ) *  vente.qte)
    FROM vente, stok
    WHERE vente.heurv >='".$dat."'	
     AND stok.nom = vente.article
    ";
    ça n'a pas marché ,d'une part elle retourne une ligne et d'autre part elle ne retourne pas la somme.

    mes tables sont:
    stok(nom, pu, qt, puv, modif).
    vente(article, caissier, qte, pv, heurv, commentair)
    nom et article represente le nom de l'article tous les deux.
    j'espère bien que quelqu'un peux m'aider.merci bien .

Discussions similaires

  1. Réponses: 6
    Dernier message: 08/01/2013, 11h03
  2. RecordSet qui n'affiche qu'une seule ligne
    Par niamo dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/06/2010, 11h17
  3. [AC-2007] Requête UNION : récuperer les valeurs sur une seule ligne
    Par tibofo dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 08/12/2009, 12h02
  4. [MySQL] requete SELECT retournant une seule ligne
    Par hermann.geiger dans le forum SGBD
    Réponses: 12
    Dernier message: 19/09/2008, 08h34
  5. jointure qui retourne tout sur une seule ligne
    Par Ralfman68 dans le forum Requêtes
    Réponses: 9
    Dernier message: 12/10/2007, 21h52

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