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 :

[Conception] Faire une somme de valeurs définies par une boucle


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 98
    Par défaut [Conception] Faire une somme de valeurs définies par une boucle
    Bonjour à tous et merci à vous de vous attardez sur mon problème,

    Mon problème est le suivant (je l'ai simplifié):

    J'ai une table composée de 2 colonnes id et prix et 5 lignes.
    J'aimerais additionner la valeur prix de la 2e ligne avec celle de la 3e ligne.

    Jusque là rien de bien compliqué me direz-vous. Seulement voilà, mes id sont déterminés par une boucle... Comment dès lors pointer les id qui m'intéresse (ici 2 et 3)....

    J'espère avoir été assez clair ...

  2. #2
    Membre confirmé Avatar de alexmorel
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    196
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2003
    Messages : 196
    Par défaut
    dans ta boucle qui te donne tes id

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $somme = 0;
    do
    {
      $somme = $somme + table[$id]['prix'];
    }

  3. #3
    Membre éclairé Avatar de max44410
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 426
    Par défaut
    Citation Envoyé par alexmorel
    dans ta boucle qui te donne tes id

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $somme = 0;
    do
    {
      $somme = $somme + table[$id]['prix'];
    }
    Doit manquer un while dans ton code je pense ...

    Pour les id 2 et 3 pas besoin de boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $somme = table[2]['prix']+table[3]['prix'];

  4. #4
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 98
    Par défaut
    Citation Envoyé par max44410
    Doit manquer un while dans ton code je pense ...

    Pour les id 2 et 3 pas besoin de boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $somme = table[2]['prix']+table[3]['prix'];
    D'accord avec toi, sauf que j'ai simplifié mon problème pour qu'il vous soit plus compréhensible... Il s'avère en fait que mes ids sont définis par un formluraire. Les ids de ce formulaire sont récupérés au moyen d'une boucle. D'où mon probleme de: faire une somme dans une boucle...

    Pour reformuler en d'autres termes et pour récupere ton code, comment ferais-tu maintenant pour aditionner n valeurs ??

  5. #5
    Invité
    Invité(e)
    Par défaut
    Essaie d'être un petit peu plus clair...

    As-tu toujours 2 valeurs à additionner? Ce sont 2 valeurs récupérées du formulaire? Peux-tu en entrer plusieurs ou es-tu limité à 2?

    webrider

  6. #6
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Pour infos tu peux aussi faire ca en SQL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT SUM(price) FROM `table` WHERE id IN(2,4)
    ajoute les prix des id 2 et 4.

    Bye

  7. #7
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 98
    Par défaut
    OK je recommence avec mon code.

    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
    // Je récupère mes données
    $options_text = $_GET['options_text']; // Cette valeur arrive sous la forme un chiffre/un chiffre/un chiffre/un chiffre...	(ex: 5/8/9/10..)	
    
    // Je récupère chacun des chiffres séparés par un slash - chaque chiffre correspondra à un id
    $split = explode("/", $options_text);
    			
    // On lance une boucle. 
    
    for($i = 1; $i < count($split); $i++){
    		
    // On sélectionne dans les DB les lignes qui nous concernent
    		
    $query = "SELECT * FROM $table WHERE id=$split[$i]";
    $result = mysql_query($query);
    
    // On lance une deuxième boucle. Elle permet d'aller chercher les valeurs correspondantes à chaque id
    
    $j=0;
    while ($j < $nb){
    
    $article = mysql_result($result,$j,"article");
    $prix = mysql_result($result,$j,"prix");
    $description = mysql_result($result,$j,"description");
    		
    echo "$article - $prix - $description";
    
    $j++; 
    // On ferme les 2 boucles
    }
    }
    J'obtiendrai donc plusieures lignes comprenant un article, son prix et sa description..

    J'aimerais maintenant faire la somme des prix de ces articles en sachant que:
    - Le nombre d'articles varient (en fonction du nombre d'id)
    - Les ids sont déterminés par une boucle

    J'espère avoir été assez clair cette fois-ci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 19/11/2014, 16h44
  2. Réponses: 15
    Dernier message: 21/05/2010, 00h36
  3. Réponses: 8
    Dernier message: 15/12/2009, 11h04
  4. Réponses: 9
    Dernier message: 18/02/2008, 11h25
  5. Faire renvoyer une valeur 'true' par une methode ?
    Par patthepat dans le forum Ruby on Rails
    Réponses: 3
    Dernier message: 10/05/2007, 05h51

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