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

Langage PHP Discussion :

Somme en php


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 16
    Points : 12
    Points
    12
    Par défaut Somme en php
    Bonjour.
    Je suis ultra-débutant en PHP-MYSQL et je m'emmêle les pinceaux.
    Voilà : Je travaille avec une table des communes de France et une table des départements de France que j'ai reliées avec une jointure.
    J'entre le nom d'une région (qui est un champs de la table 'départements') dans un formulaire et la requête me délivre le nom, le n° et la population de chaque département composant la région en question.

    Nom : reponse_bdd.jpg
Affichages : 1949
Taille : 134,4 Ko

    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
     
    <?php
     
    						try
    						{
    							$bdd = new PDO('mysql:host=localhost;dbname=villes_de_france;charset=utf8', 'root', '');
    							array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION);
    						}
    						catch(Exception $e)
    						{
    							die('Erreur : '.$e->getMessage());
    						}
     
    						$req = $bdd->prepare('SELECT SUM(ville_population_2010) AS dept_population, departement_nom, departement_code FROM  villes_france_free INNER JOIN departement WHERE villes_france_free.ville_departement = departement.departement_code AND departement_region = :region GROUP BY departement_code ORDER BY dept_population DESC');
     
    						$req->execute(array('region' => $_POST['region']));
     
    						echo '<ul><p>Région ' . $_POST['region'] . '</p><br>';
    						$i = 0;
    						while ($donnees = $req->fetch())
    						{
    							echo '<li>' . $donnees['departement_nom'] . ' (' . $donnees['departement_code'] . ') - ' . $donnees['dept_population'] . '</li>';
    							$i++;
    						}
    						echo '<br>La région ' . $_POST['region'] . ' est composée de ' . $i . ' départements</ul><hr>';
     
    						$req->closeCursor();
     
    					?>
    Maintenant j'aimerais faire la somme des populations des départements (la somme des $donnees['dept_population']) afin d'obtenir la population de la région, et pouvoir l'afficher en bas des résultats.
    Mais je ne sais pas comment faire.
    Quelqu'un pourrait-il m'aider ? Merci beaucoup d'avance pour votre aide

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il suffit de faire la somme en fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $somme = 0;
    while ($donnees = $req->fetch())
    						{
    							echo '<li>' . $donnees['departement_nom'] . ' (' . $donnees['departement_code'] . ') - ' . $donnees['dept_population'] . '</li>';
    							$i++;
                                                            $somme += $donnees['dept_population'];
    						}
    echo 'somme : ' . $somme;
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 16
    Points : 12
    Points
    12
    Par défaut
    Je suis vraiment débutant
    Merci beaucoup pour cette réponse. La somme est bien réalisée.
    J'ai un autre souci maintenant : cela m'affiche une erreur 'Undefined variable: somme'.

    Nom : Somme.jpg
Affichages : 2037
Taille : 210,1 Ko

    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
     
    $req = $bdd->prepare('SELECT SUM(ville_population_2010) AS dept_population, departement_nom, departement_code FROM villes_france_free INNER JOIN departement WHERE villes_france_free.ville_departement = departement.departement_code AND departement_region = :region GROUP BY departement_code ORDER BY dept_population DESC');
     
    						$req->execute(array('region' => $_POST['region']));
     
    						echo '<ul><p>Région ' . $_POST['region'] . '</p><br>';
    						$i = 0;
    						while ($donnees = $req->fetch())
    						{
    							echo '<li>' . $donnees['departement_nom'] . ' (' . $donnees['departement_code'] . ') - ' . $donnees['dept_population'] . '</li>';
    							$i++;
    							$somme += $donnees['dept_population'];
    						}
    						echo '<br>La région ' . $_POST['region'] . ' est composée de ' . $i . ' départements pour une pôpulation de ' . $somme . ' habitants</ul><hr>';
     
    						$req->closeCursor();
    Pourriez-vous m'expliquer pourquoi ?
    Je vous remercie infiniment.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 16
    Points : 12
    Points
    12
    Par défaut
    Autant pour moi. J'ai oublié d'initialiser la variable Somme !!
    Mon dieu que c'est pénible de débuter
    Je vais réessayer. Merci encore.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 16
    Points : 12
    Points
    12
    Par défaut
    Merci Sabotage
    Cela fonctionne.
    Merci pour la réactivité, et quelle base de connaissances !
    Bonne journée

Discussions similaires

  1. [MySQL] Somme d'une colonne PHP
    Par Benji861905 dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 08/11/2013, 18h50
  2. Quel est le meilleur script PHP de portail (CMS) ?
    Par Lana.Bauer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 187
    Dernier message: 18/10/2012, 07h45
  3. [MySQL] Somme de quantité d'un produit en php a partir d'une table
    Par Hatem761 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 31/03/2012, 09h43
  4. [PHP-JS] somme de 2 variables php en javascript
    Par bluzy dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 02/12/2006, 14h34

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