Avatar billede thiesens Nybegynder
01. august 2006 - 11:01 Der er 6 kommentarer og
1 løsning

gennemstit af posts i form

Jeg har en form med 10 felter hvori man skriver talværdier. De bruges til at indsætte i en DB. Jeg skal så bruge et ekstra felt i DB'en der angiver gennemsnittet af værdierne.
jeg har prøvet med følgende:

Starter med at finde ud af om der er skrevet noget i hvert felt og sætter en variabel til enten 0 eller 1 for hver, og lægger variablerne sammen.

dernæst lægger jeg alle værdierne sammen og dividerer så bare de to tal.

Det kan jeg selvfølgelig ikke få til at virke og det tager også en evighed at lave.

er der nogen måde at gøre det lettere evt et felt der regner gennemsnittet mens man indtaster, så jeg kan bruge det som $_POST['gennemsnit'] direkte.

Håber der er en der har et godt forslag.
Avatar billede zynzz Praktikant
01. august 2006 - 11:09 #1
Men hvorfor skal det være en $_POST variabel ?,

$gennemsnit =($_POST[1]+$_POST[2]+$_POST[3]+$_POST[4]+$_POST[5]+$_POST[6]+$_POST[7]+$_POST[8]+$_POST[9]+$_POST[10])/10;


og derefter ligge det ind i databasen ?, jeg ved ikke om man skal udfylde alle sammen...
Avatar billede thiesens Nybegynder
01. august 2006 - 11:27 #2
værdierne skal kum medregnes hvis der er skrevet i dem det vil sige at hvis der kun er skrevet i 7 felter skal der kun divideres med 7 og ikke 10
Avatar billede gizmo-gizmo Nybegynder
01. august 2006 - 12:09 #3
Et eksempel på hvordan du kan finde gennemsnittet af nogle felter... jeg ved ikke om du kan bruge det, men her er det:

<?php
if (isset($_GET['udregn'])) {
  for($i=1; $i<=10; $i++) {
    if (is_numeric($_POST['felt_'.$i])) {
      $antal++;
      $ialt += $_POST['felt_'.$i];
    }
  }
  $gennemsnit = $ialt / $antal;
  echo $gennemsnit;
}
?>


<form action="MITDOKUMENT.php?udregn=true" method="post">
  <input type="text" name="felt_1"><input type="text" name="felt_2"><input type="text" name="felt_3"><input type="text" name="felt_4"><input type="text" name="felt_5"><input type="text" name="felt_6"><input type="text" name="felt_7"><input type="text" name="felt_8"><input type="text" name="felt_9"><input type="text" name="felt_10">
  <input type="submit" value="udregn gennemsnit">
</form>
Avatar billede thiesens Nybegynder
01. august 2006 - 17:04 #4
gizmo-gizmo tak for dit svar... den sidder lige i skabet.... kanon.... smid et svar
Avatar billede gizmo-gizmo Nybegynder
01. august 2006 - 17:11 #5
Super :)
Avatar billede thiesens Nybegynder
01. august 2006 - 17:50 #6
kan du så som et tillæg fortælle mig hvad jeg skal indsætte det sim i mysql for at ende med 2 decimaler, da double giver mange flere
Avatar billede gizmo-gizmo Nybegynder
01. august 2006 - 17:59 #7
For at få 2 decimaler kan du:
$gennemsnit = round(($ialt/$antal), 2);
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester