PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 21-10-2010 00:01:56

kanell
Membre
Inscription : 20-10-2010
Messages : 5

Comment faire la somme et la moyenne des valeurs saisies dans un formu

Bonjour,
j'ai realisé un formulaire permettant d'entrer des valeurs numériques. Je souhaite  récupérer ces valeurs dans mon script , afin d'afficher la somme et la moyenne dans la page utilisateur. Je débute aussi si quelqu'un pouvait m'aider à réaliser ce script php ce serait sympa, car je tourne en rond et j'ai toujours des erreurs .
Je glisse ici le début de mon script ici ;

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<title>moyenne</title></head>
</head>
<body>
<h2>Formulaire</h2>

<form action="montest2.php" method="POST">
<table>
<tr>
<td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
<tr><td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
<tr><td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
<tr><td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
<tr><td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
</table>
<input type="submit" name="soumettre">
</form>

<?php
echo "liste des valeurs entées :  ";
print_r($_POST['tab_chiffres']); //Affiche toutes les valeurs du tableau en "brut"
?>

</body>
</html>

Merci de votre aide

Hors ligne

#2 21-10-2010 01:51:32

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

et il est ou ton problème ?
a++

Hors ligne

#3 21-10-2010 06:04:18

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

Pour la somme c'est tout simple : array_sum()
Pour la moyenne ce n'est que l'application du calcul mathématique, en gros passer de l'algorythme au code. Quel est ton algo ?

Hors ligne

#4 21-10-2010 13:12:47

kanell
Membre
Inscription : 20-10-2010
Messages : 5

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

Merci de m'avoir répondu aussi vite.
ok pour array_sum - j'ai rajouté à la suite de mon script le code ci dessous.
<?php
$tab_chiffres[0] = "33";
$tab_chiffres[1] = "33";
$tab_chiffres[2] = "33";
$tab_chiffres[3] = "33";
$tab_chiffres[4] = "33";

echo array_sum ($tab_chiffres);
?>

Mon problème est le suivant : quand je change les valeurs numériques dans le formulaire - je n'obtiens pas le résultat attendu.
A plus

Hors ligne

#5 21-10-2010 13:36:27

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

a savoir quand tu utilise des " il s'agit d'une chaine de caractère et non d'un chiffre.
la bonne syntaxe est donc : $tab_chiffres[0] = 33;

Les données provenant d'un formulaire sont aussi des chaines de caractères. Il serais intéressant de savoir si le champ ne contient que des chiffres (pour ne pas avoir des choses exubérantes). Pour cela tu peut utiliser une expression régulière avec simplement la classe [0-9] ou utiliser simplement la fonction is_numeric.

une fois que tu a la somme avec array_sum il "suffit" de diviser par le nombre d'élement du tableau (fonction count()) pour avoir la moyenne arithmétique simple sans aucune pondération (la c'est plus complexe).

pour vérifier tous les élément d'un tableau en une seul fois la fonction array_walk te sera utile smile

@+


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

#6 22-10-2010 12:09:37

kanell
Membre
Inscription : 20-10-2010
Messages : 5

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

Bonjour,
Super j'ai reussi à faire ce que je voulais.
Donc pour la moyenne j'ai mis le code suivant :

<?php
echo "Afficher la moyenne <br>" ;
echo array_sum ($tab_chiffres)/count($tab_chiffres);

?>

Ca fonctionne - merci encore et je passe à l'étape suivante

@+

Hors ligne

#7 22-10-2010 13:08:56

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

de rien


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

#8 30-10-2010 23:05:09

kanell
Membre
Inscription : 20-10-2010
Messages : 5

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

Bonjour,
j'ai encore un problème. Je ne comprends pourquoi la somme et la moyenne ne sont pas exact quelque soit la valeur entrée dans le formulaire. Y a encore un truc qui m'échappe.
je glisse mon script a nouveau

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<title>moyenne</title></head>
</head>
<body>
<h2>Formulaire</h2>

<form action="tableaux2.php" method="POST">
<table>
<tr>
<td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
<tr><td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
<tr><td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
<tr><td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
<tr><td><input type="text" name="tab_chiffres[]"value=""/></td></tr>
</table>
<input type="submit" name="soumettre">
</form>

<?php

echo "liste des valeurs entées 2ème solution:  <br>";

foreach($_POST['tab_chiffres'] as $chiffre)
{
   echo $chiffre . "<br>";
}
?>

<?php
$tab_chiffres[0] =  $chiffre;
$tab_chiffres[1] =  $chiffre;
$tab_chiffres[2] =  $chiffre;
$tab_chiffres[3] =  $chiffre;
$tab_chiffres[4] =  $chiffre;


echo "afficher la somme totale" ;
echo array_sum ($tab_chiffres);
echo "<br>";
?>
<?php
echo $result = count($tab_chiffres);
?>

<?php
echo "Afficher la moyenne <br>" ;
echo array_sum ($tab_chiffres)/$result;

?>


</body>
</html>

j'attends vos lumières parce que là j suis dans le noir total.
Merci d'avance et à bientot.

Hors ligne

#9 31-10-2010 10:21:37

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

$tab_chiffres[0] =  $chiffre;
$tab_chiffres[1] =  $chiffre;
$tab_chiffres[2] =  $chiffre;
$tab_chiffres[3] =  $chiffre;
$tab_chiffres[4] =  $chiffre;

$chiffre n'est pas défini en dehors de la boucle foreach.

Hors ligne

#10 01-11-2010 13:58:58

kanell
Membre
Inscription : 20-10-2010
Messages : 5

Re : Comment faire la somme et la moyenne des valeurs saisies dans un formu

Bonjour,
ok si je défini la variable $chiffre dans mon script pas de problème. La somme s'affiche.

Mais j'ai créé un formulaire pour que l'internaute puisse obtenir la somme quelque soit la valeur entrée dans le formulaire. et c'est la mon souci -
A++

Hors ligne

Pied de page des forums