Calcul de solde (correction d'une ligne)

Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   -  
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Pouvez-vous m'aider à corriger cette requête s'il vous plait ?

$usersolde = MySql::getConnection()->query("SELECT id, SUM(debit - credit) AS solder FROM comptes WHERE id = '".intval($_SESSION['id'])."'")->fetch();

<?php echo htmlentities($usersolde['solder']); ?>


4 réponses

  1. Melooo Messages postés 1476 Statut Membre 84
     
    Salut,
    Euh avant de la corriger faudrait savoir à quoi elle sert, quel résultat tu veux, quelle erreur as-tu (si tu en as)
    0
  2. Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
     
    Il n'y a pas d'erreur, la requête doit afficher le solde qui est le résultat du débit - credit, deux champs de la base de données mysql dont l'id est égale au client choisis.

    Mon bout de code est le suivant :
    $files = MySql::getConnection()->query("SELECT * FROM comptes WHERE id_user = '".intval($_SESSION['id'])."' ORDER BY date_jour DESC")->fetch();
    $userinfo = MySql::getConnection()->query("SELECT * FROM utilisateurs WHERE id = '".intval($_SESSION['id'])."'")->fetch();
    $usersolde = MySql::getConnection()->query("SELECT id, SUM(debit - credit) AS solder FROM comptes WHERE id = '".intval($_SESSION['id'])."'")->fetch();
    $err = false;
    $msg = "";


    Je recupère le résultat pour le solde avec :
    <?php echo htmlentities($usersolde['solder']); ?>


    Mais le calcul est faux... voilà mon problème.
    0
    1. Melooo Messages postés 1476 Statut Membre 84
       
      Donnes nous des infos...
      'debit' , 'credit' , $_SESSION['id'] ils ont quoi comme valeur ?
      tu récupères bien l'id ?
      0
  3. Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
     
    "Debit" et "credit" sont des champs de la table "comptes" de type double.
    Si je dois croire l'affichage des éléments du tableau concernant le nom du client et les valeurs du tableau, ils sont justes.

    http://alifat-ci.com/comptes/index.php
    user : ahmed
    pass: ahmed
    0
    1. Melooo Messages postés 1476 Statut Membre 84
       
      Euh j'ai le bon calcul...
      -129112 est le bon résultat
      0
  4. Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
     
    Non ça c'est une note
    (note: débit - credit)
    débit = ce qu'ils ont payés
    credit = ce qu'ils doivent)
    Doit avoir -129112 pour le compte Ahmed


    Le résultat que j'obtiens avec la requête est 105000 au lieu de -129112, soit le dernier enregistrement du tableau.

    Il y a bien une erreur...
    0