begin process at 2012 05 31 16:02:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Soustraction dans PHP de deux colonnes mysql


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Soustraction dans PHP de deux colonnes mysql

jeudi 28 août 2008 à 22:35:14 | Soustraction dans PHP de deux colonnes mysql

lymphis

Membre Club
bonjour,

voilà je vient de crée un projet à cette adresse: http://www.phpcs.com/codes/COMPTES-DIRECT-V0-ALPHA_47783.aspx

le soucis c'est que ma base de donnée et comme ci dessous (ceci est mon fichier d'installation)
mysql_query(" CREATE TABLE `$base`.`Transaction` (
`id` INT NOT NULL AUTO_INCREMENT ,
`type` VARCHAR( 255 ) NOT NULL ,
`date` VARCHAR( 255 ) NOT NULL ,
`mode` VARCHAR( 255 ) NOT NULL ,
`debit` VARCHAR( 255 ) NOT NULL ,
`credit` VARCHAR( 255 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = InnoDB ");

et donc je souhaiterai savoir si il exister un script PHP qui permettrai de faire debit - crédit et de l'afficher via une commande echo

merci beaucoup de votre aide je suis débutant et c'est dur
vendredi 29 août 2008 à 10:01:44 | Re : Soustraction dans PHP de deux colonnes mysql

neigedhiver

Salut,

Tu peux faire une simple requête SQL :

SELECT (sum(credit) - sum(debit)) as diff FROM Transaction;

C'est plus performant de laisser MySQL faire le calcul, que de récupérer tous les enregistrements et de faire la différence.

Avec mysql_fetch_**** tu récupères une ligne (il n'y en aura qu'une), qui ne contient qu'une seule colonne (qui s'appelle diff, mais tu peux l'appeler autrement dans la requête, ça n'a aucune importance : tu peux même ne pas lui donner de nom).


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
vendredi 29 août 2008 à 12:15:14 | Re : Soustraction dans PHP de deux colonnes mysql

lymphis

Membre Club
merci beaucoup et pour l'afficher un simple echo $donnees['diff'] ?
vendredi 29 août 2008 à 12:28:13 | Re : Soustraction dans PHP de deux colonnes mysql

lymphis

Membre Club
voici mon script actuelle
    <?php
    mysql_connect($mysql, $identifiant, $mdp)or die("Impossible de se connecter au serveur Mysql");
    mysql_select_db($base) or die("Impossible de se connecter à la base de donnée");
    $solde = mysql_query("SELECT (sum(credit) - sum(debit)) as diff FROM Transaction");
    echo "Votre solde actuel et de $solde";
    $reponse = mysql_query("SELECT * FROM Transaction");
    while ($donnees = mysql_fetch_array($reponse) )
    {
    ?><br /><br />
    <?php echo $donnees['type']; ?><br />
    <?php echo $donnees['date']; ?><br />
    <?php echo $donnees['mode']; ?><br />
    - <?php echo $donnees['debit']; ?>¤<br />
    + <?php echo $donnees['credit']; ?>¤<br /><br /><br />
     
    <?php
    }
    mysql_close();
    ?>

sa me met "Votre solde actuel et de Resource id #3"

merci de votre aide (et si on peu editer dite moi comment je ne sais pas du tout donc désoler)
vendredi 29 août 2008 à 12:45:49 | Re : Soustraction dans PHP de deux colonnes mysql

neigedhiver

$solde = mysql_query("SELECT (sum(credit) - sum(debit)) as diff FROM Transaction");
    echo "Votre solde actuel et de $solde";

Euh... un petit tour sur la doc de PHP pour bien comprendre comment fonctionne fonctionnent les fonction mysql_*
mysql_query() retourne une resource de type 'mysql result'
Un résultat mysql peut être lu avec une des fonction mysql_fetch_* et mysql_result()

$result = mysql_query('SELECT (SUM(credit) - SUM(debit)) AS solde FROM Transaction');
$solde = mysql_result($result, 0, 'solde');
echo 'Votre solde est de : ' . $solde;

Sinon, évite de parcourir tous les enregistrements, parce que si tu en as 3000 dans ta table, ça va être très lourd, questions performances. Pense à afficher sur plusieurs pages.


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
vendredi 29 août 2008 à 12:54:36 | Re : Soustraction dans PHP de deux colonnes mysql

lymphis

Membre Club
je te remercie beaucoup, j'utilise le site du zero et un livre et j'ai jamais vu comment faire une sosutraction

ben je vais apprendre la methode merci de ton aide
vendredi 29 août 2008 à 16:49:22 | Re : Soustraction dans PHP de deux colonnes mysql

jreaux62

Bonjour,
SUM (Transact-SQL) :
[ Lien ]

Attention : tu as défini tes champs "debit" et "credit" en VARCHAR
Tu aurais dû les déclarer en "numerique" (INT, DECIMAL, ...)
vendredi 29 août 2008 à 19:17:31 | Re : Soustraction dans PHP de deux colonnes mysql

lymphis

Membre Club
merci beaucoup jreaux62

je penser à les changer mais avant je doi faire un script php pour verifier que les champ des montant sont bien rempli avec un nombre entier ou decimal (sa je sais le fait avec mon livre)

merci bien ;)

en tout cas via ton lien sa explique pas très bien je pense chercher un tuto qui explique mieu car la c'est trop vaste
vendredi 29 août 2008 à 20:37:08 | Re : Soustraction dans PHP de deux colonnes mysql

jreaux62

Rebonjour,
A mon avis, ce que tu veux faire (pour chaque id) c'est juste
solde = (credit - debit) :

$solde = mysql_query("SELECT (credit - debit) as solde FROM Transaction");
echo "Votre solde actuel est de $solde";


NB : SUM(machin) fais la somme de toutes les valeurs de la colonne "machin"
(ce n'est pas ce que tu veux faire !)
vendredi 29 août 2008 à 20:40:59 | Re : Soustraction dans PHP de deux colonnes mysql

jreaux62

La syntaxe exacte est :
($id est l'id de la personne concernée)

$solde = mysql_query('SELECT (credit - debit) as solde FROM Transaction WHERE id = '. $id);
echo 'Votre solde actuel est de '. $solde;

1 2

Cette discussion est classée dans : php, mysql, not, soustraction, varchar


Répondre à ce message

Sujets en rapport avec ce message

aidez moi !!mon script plante !! [ par windows972 ] voila je fais un  script mais il plante lors de l'installation .le but de mon script est de permettre l'installation automatique de la table SQL depui insertion massif [ par Defray ] Bonjour à tous,Voila un probleme se pose à moi, je doit élaborer un centre d'upload "php" pour envoyer et traiter des infomations par lots d'images po Requête qui rend fou [ par clemg ] Bonjour à tous, Voici mon problème : j'essaye de réaliser une requête toute simple, comme il y en a sur toutes les pages de mon site : insérer une ent comparaison avec php/mysql [ par cyrilherve ] bonjour à tous ,je developpe depuis avec php/mysql et j'utlise pour cela wamp 2.0je suis confronté à un probleme de depuis peut, voici mon code:[CODE] Variable PHP dans requete MySQL [ par guyom11 ] Bonjour à tous,Je suis confronté à un petit problème dans le cas où j'essaye de créer une table avec une variable PHP dont la valeur contient un espac Problème de insert into [ par VLN ] Bonjour, J'ai un souci d'envoie sur sql lorsqu'on remplie le formulaire il me donne erreur a la ligne 3 et 4 Le configuration.php est la connection à php/mysql: pas d'erreur, mais page blanche [ par tonguim ] Bonjour,le code php suivant ne me donne aucun résultat, etaucune erreur; je n'ai qu'une page toute blanche. Pourtant, lorsquej'exécute la requete dans Pb de php pour une tribune libre [ par kakashiXP ] Bonjours, je ne connais pas grand chose au php mais j'ai essayé d'inserer une tribune libre sur mon site mais elas elle ne marche pas vous pouriez peu faire un acces membre en PHP [ par morpheus22170 ] voilà je fais un accès membre qui a partir d'une saisie (identification et mot de passe) va sur une page (différente suivant du statut: administrateur problème pour récupérer un ID [ par Francky23012301 ] Salut à tous,Je réalise le code suivant //Connection à la BDD $db = mysql_connect('localhost', 'root','');                         //Sélection de la b


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales