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 :

Calcul du total des ventes et des consommations


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Points : 356
    Points
    356
    Par défaut Calcul du total des ventes et des consommations
    Bonjour,

    Dans une application PHP-MySql, je cherche à connaître, par produit, la quantité totale de ses ventes et consommations. Le code suivant ne me donne pas le résultat attendu, et je n'en vois pas la cause.

    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
    $connect = connection("../commandes.php");
    $query = "select cle_prod, denom_prod, (select nom_fourn from fournisseurs_tb where cle_fourn = cde_fournisseur1_prod) from produits_tb where supprime_prod = 0 order by denom_prod"; 
    $resultat = mysql_query($query);
     
    while($row = mysql_fetch_array($resultat)) 
      { 
       $tot = 0;
       $totConso = 0;
       $totVentes = 0;
     
       $requete="select sum(qtte_prod_conso) from conso_tb where cde_prod_conso = $row[0] and (date_conso between '$dDeb' and '$dFin')";
       $result = mysql_query($requete, $connect);
       $num_result_cons = mysql_num_rows($result);
     
       if($num_result_cons)
        {
          $resultConso = mysql_fetch_array($result);
          $totConso = $resultConso[0];
        }
     
       $requete = "select sum(qqte_vente) from ventes_tb where cde_prod_vente = $row[0] and (date_vente between '$dDeb' and '$dFin')";
       $res = mysql_query($requete, $connect);
       $num_result_vente = mysql_num_rows($res);
     
       if($num_result_vente)
        {
          $resVentes = mysql_fetch_array($res);
          $totVentes = $resVentes[0];
        }
     
       $tot = $totConso + $totVentes;
    Y aurait-il une bonne âme pour m'aider?

    Merci d'avance.

    Christophe

  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
    Bonjour

    Petite question : quand tu dis que tu n'obtiens pas le résultat attendu, tu obtiens quoi ? un total aberrant, 0 ou un message d'erreur ?
    Si c'est un des 2 premiers cas, je te conseille d'ajouter des echo un peu partout pour voir ce qu'il passe réellement. Par exemple, un echo $totConso lorsque tu l'affectes, ce genre de chose.

    Et si tu as un message d'erreur, donne-le, ça aidera

    Tu peux aussi ajouter or die(mysql_error()) lors de l'execution des requêtes, ça peut servir
    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 averti
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Points : 356
    Points
    356
    Par défaut
    Merci beaucoup pour ton attention...

    En fait, comme ce code est inclus dans la génération d'un PDF, le déboggage est un peu plus difficile.

    Cependant, j'ai revu mes deux requêtes pour n'en former plus qu'une, mais le résultat que j'obtiens est NULL alors que j'ai bien des ventes pour ce produit durant la période déterminée. Voici ma requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select cons.nb + ventes.nb from (select sum(qtte_prod_conso) as nb from conso_tb where cde_prod_conso = 797 and (date_conso between '2006-01-01' and '2007-02-28')) as cons, (select sum(qqte_vente) as nb from ventes_tb where cde_prod_vente = 797 and (date_vente between '2006-01-01' and '2007-02-28')) as ventes
    Merci d'avance pour votre aide.

    Christophe

Discussions similaires

  1. [CR 10] impression des conditions general des ventes CGV
    Par webfranc dans le forum Débuter
    Réponses: 3
    Dernier message: 28/12/2011, 08h38
  2. Vers des serveurs embarquant des puces ARM basse consommation ?
    Par Gordon Fowler dans le forum Actualités
    Réponses: 6
    Dernier message: 11/05/2010, 10h51

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