J'ai du mal a afficher le resultats de ma soustraction

majy1100 - 19 déc. 2012 à 16:43
 Utilisateur anonyme - 25 déc. 2012 à 23:43
Bonjour messieur je suis debutant en php et en sql egalement mais j'arrive toute fois a avancer mais helas jai un serieux probleme
Je veux effectuer une soustraction entre 2 champs de 2 tables differentes! Comme reponse j'obtiens des array au lieu de chiffres!!!
Voici une parie de mon code


<?php   //On se connecte
              connectMabase();
     //On prépare la requête SQL qui récupère les champs
 $sql1 'select (("fourniture.fourn_quant")-sum("fournitureop.quant")) from fourniture, fournitureop where fourniture.fourn_num fournitureop.fourn_num';
                                                   
  /* On lance la requête (mysql_query) et on impose un message d'ereur si la requête ne passe pas (or die) */   $req1 = mysql_query($sql1)or die('Erreur SQL !
'.$sql.'
'.mysql_error()); 
  //On scanne le résultat et on construit chaque option avec
                            
  while ($data1 = mysql_fetch_array($req1)) {
 $id = $data1;
  echo "<tr>\n
<td>$id</td>\n
 </tr>\n";

}    //On libère mysql de cette première requête
                             mysql_free_result ($req1); 
                  //On ferme le select
        ?>	


unp d'aide svp

3 réponses

quelqu'un pourrais m'aider svp
0
cs_Malkuth Messages postés 268 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 24 avril 2013 4
25 déc. 2012 à 13:39
je décompose le problème, tu me dis si je vois juste :

Dans la table [fourniture], on as la quantité initial dans le champ [fourn_quant].
Dans la table [fournitureop], on as la variation de stock dans le champ [quant].
On as une correspondance entre les champs [fourniture].[fourn_num] et [fournitureop].[fourn_num].

Le but c'est de connaitre le stock actuel :

SELECT
    fourniture.fourn_num,
    (fourniture.fourn_quant - COALESCE(Mvt_Stock.variation_total,0)) Stock_Actuel
FROM fourniture
LEFT OUTER JOIN (
    SELECT 
        fournitureop.fourn_num,
        SUM(fournitureop.quant) variation_total
    FROM fournitureop
    GROUP BY fournitureop.fourn_num ) Mvt_Stock
ON fourniture.fourn_num = Mvt_Stock.fourn_num;
0
Utilisateur anonyme
25 déc. 2012 à 23:43
Salut,

Normal que tu aies un array puisque ta fonction mysql_fetch_array te retourne un array. Donc à toi de le traiter en conséquence car là tu l'affiches dans sa version brute ce qui doit te donner de drôles de surprises.

--
Pylouq
Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
0
Rejoignez-nous